mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-09-26 02:07:36 +00:00
added test for creating new ifcgroups
This commit is contained in:
@@ -7,11 +7,21 @@ Scenario: Select all walls
|
|||||||
And the object "Cube" is selected
|
And the object "Cube" is selected
|
||||||
And I set "scene.BIMRootProperties.ifc_class" to "IfcWall"
|
And I set "scene.BIMRootProperties.ifc_class" to "IfcWall"
|
||||||
And I press "bim.assign_class"
|
And I press "bim.assign_class"
|
||||||
And I add a new group to IfcSelector
|
And I add a new item to "scene.IfcSelectorProperties.groups"
|
||||||
And I add a new query to IfcSelector
|
And I add a new item to "scene.IfcSelectorProperties.groups[0].queries"
|
||||||
And I set "scene.IfcSelectorProperties.groups[0].queries[0].selector" to "IFC Class"
|
And I set "scene.IfcSelectorProperties.groups[0].queries[0].selector" to "IFC Class"
|
||||||
And I set "scene.IfcSelectorProperties.groups[0].queries[0].active_option" to "124: IfcWall"
|
And I set "scene.IfcSelectorProperties.groups[0].queries[0].active_option" to "124: IfcWall"
|
||||||
When I press "bim.filter_model_elements(option='select')"
|
When I press "bim.filter_model_elements(option='select')"
|
||||||
Then the object "IfcWall/Cube" is selected
|
Then the object "IfcWall/Cube" is selected
|
||||||
|
|
||||||
|
Scenario: Add selection to IfcGroup
|
||||||
|
Given an empty IFC project
|
||||||
|
And I add a cube
|
||||||
|
And the object "Cube" is selected
|
||||||
|
And I set "scene.BIMRootProperties.ifc_class" to "IfcWall"
|
||||||
|
And I press "bim.assign_class"
|
||||||
|
And I set "scene.IfcSelectorProperties.selector_query_syntax" to ".IfcWall"
|
||||||
|
And I set "scene.IfcSelectorProperties.manual_override" to "True"
|
||||||
|
When I press "bim.add_to_ifc_group(group_name='Walls')"
|
||||||
|
And I press "bim.load_groups"
|
||||||
|
Then "scene.BIMGroupProperties.groups[-1].name" is "Walls"
|
||||||
|
|||||||
@@ -88,7 +88,7 @@ def i_add_an_empty():
|
|||||||
|
|
||||||
|
|
||||||
@given("I add a sun")
|
@given("I add a sun")
|
||||||
@when("I add an sun")
|
@when("I add a sun")
|
||||||
def i_add_a_sun():
|
def i_add_a_sun():
|
||||||
bpy.ops.object.light_add(type="SUN")
|
bpy.ops.object.light_add(type="SUN")
|
||||||
|
|
||||||
@@ -98,15 +98,15 @@ def i_add_a_sun():
|
|||||||
def i_add_a_material():
|
def i_add_a_material():
|
||||||
bpy.context.active_object.active_material = bpy.data.materials.new("Material")
|
bpy.context.active_object.active_material = bpy.data.materials.new("Material")
|
||||||
|
|
||||||
@given("I add a new group to IfcSelector")
|
|
||||||
@when("I add a new group to IfcSelector")
|
@given(parsers.parse('I add a new item to "{collection}"'))
|
||||||
def i_add_a_new_collection_item():
|
@when(parsers.parse('I add a new item to "{collection}"'))
|
||||||
bpy.data.scenes["Scene"].IfcSelectorProperties.groups.add()
|
def i_add_a_new_collection_item(collection):
|
||||||
|
try:
|
||||||
@given("I add a new query to IfcSelector")
|
eval(f"bpy.context.{collection}.add()")
|
||||||
@when("I add a new query to IfcSelector")
|
except:
|
||||||
def i_add_a_new_collection_item():
|
assert False, "Collection does not exist"
|
||||||
bpy.data.scenes["Scene"].IfcSelectorProperties.groups[0].queries.add()
|
|
||||||
|
|
||||||
@given(parsers.parse('the material "{name}" colour is set to "{colour}"'))
|
@given(parsers.parse('the material "{name}" colour is set to "{colour}"'))
|
||||||
@when(parsers.parse('the material "{name}" colour is set to "{colour}"'))
|
@when(parsers.parse('the material "{name}" colour is set to "{colour}"'))
|
||||||
@@ -485,6 +485,7 @@ def prop_is_value(prop, value):
|
|||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
if not is_value:
|
if not is_value:
|
||||||
|
print(f"bpy.context.{prop}")
|
||||||
actual_value = eval(f"bpy.context.{prop}")
|
actual_value = eval(f"bpy.context.{prop}")
|
||||||
assert False, f"Value is {actual_value}"
|
assert False, f"Value is {actual_value}"
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user