bimtester: features, move qset test from example steps to implemented steps

This commit is contained in:
Bernd Hahnebach
2021-12-07 09:38:22 +01:00
parent 89e3276c90
commit 3f46d54ad9
2 changed files with 9 additions and 3 deletions
@@ -24,3 +24,6 @@ from bimtester.features.steps.aggregation import en
use_step_matcher("parse")
from bimtester.features.steps.attributes_psets import en, de
use_step_matcher("parse")
from bimtester.features.steps.attributes_qsets import en
@@ -0,0 +1,22 @@
from behave import step
# from bimtester import util
from bimtester.ifc import IfcStore
from bimtester.lang import _
# TODO: use get_psets from ifcopenshell.util.element
@step('All "{ifc_class}" elements have a "{qto_name}.{quantity_name}" quantity')
def step_impl(context, ifc_class, qto_name, quantity_name):
elements = IfcStore.file.by_type(ifc_class)
for element in elements:
is_successful = False
if not element.IsDefinedBy:
assert False
for relationship in element.IsDefinedBy:
if relationship.RelatingPropertyDefinition.Name == qto_name:
for quantity in relationship.RelatingPropertyDefinition.Quantities:
if quantity.Name == quantity_name:
is_successful = True
if not is_successful:
assert False