mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-08-09 17:31:45 +00:00
Fixes problems with referents
This commit is contained in:
@@ -98,31 +98,36 @@ def callback_alignment():
|
||||
|
||||
def test_with_default_names(default_names_alignment):
|
||||
hlayout = ifcopenshell.api.alignment.get_horizontal_layout(default_names_alignment)
|
||||
referent_nest = ifcopenshell.api.alignment.get_referent_nest(None,hlayout)
|
||||
|
||||
assert "P.O.B." in hlayout.IsNestedBy[0].RelatedObjects[0].IsNestedBy[0].RelatedObjects[0].Name
|
||||
assert "P.C." in hlayout.IsNestedBy[0].RelatedObjects[1].IsNestedBy[0].RelatedObjects[0].Name
|
||||
assert "P.T." in hlayout.IsNestedBy[0].RelatedObjects[2].IsNestedBy[0].RelatedObjects[0].Name
|
||||
assert "P.O.E." in hlayout.IsNestedBy[0].RelatedObjects[-1].IsNestedBy[0].RelatedObjects[0].Name
|
||||
assert "P.O.B." in referent_nest.RelatedObjects[0].Name
|
||||
assert "P.C." in referent_nest.RelatedObjects[1].Name
|
||||
assert "P.T." in referent_nest.RelatedObjects[2].Name
|
||||
assert "P.O.E." in referent_nest.RelatedObjects[-1].Name
|
||||
|
||||
vlayout = ifcopenshell.api.alignment.get_vertical_layout(default_names_alignment)
|
||||
referent_nest = ifcopenshell.api.alignment.get_referent_nest(None,vlayout)
|
||||
|
||||
assert "V.P.O.B." in vlayout.IsNestedBy[0].RelatedObjects[0].IsNestedBy[0].RelatedObjects[0].Name
|
||||
assert "P.V.C." in vlayout.IsNestedBy[0].RelatedObjects[1].IsNestedBy[0].RelatedObjects[0].Name
|
||||
assert "P.V.T." in vlayout.IsNestedBy[0].RelatedObjects[2].IsNestedBy[0].RelatedObjects[0].Name
|
||||
assert "V.P.O.E." in vlayout.IsNestedBy[0].RelatedObjects[-1].IsNestedBy[0].RelatedObjects[0].Name
|
||||
assert "V.P.O.B." in referent_nest.RelatedObjects[0].Name
|
||||
assert "P.V.C." in referent_nest.RelatedObjects[1].Name
|
||||
assert "P.V.T." in referent_nest.RelatedObjects[2].Name
|
||||
assert "V.P.O.E." in referent_nest.RelatedObjects[-1].Name
|
||||
|
||||
|
||||
def test_with_callbacks(callback_alignment):
|
||||
hlayout = ifcopenshell.api.alignment.get_horizontal_layout(callback_alignment)
|
||||
referent_nest = ifcopenshell.api.alignment.get_referent_nest(None,hlayout)
|
||||
|
||||
assert "A" in hlayout.IsNestedBy[0].RelatedObjects[0].IsNestedBy[0].RelatedObjects[0].Name
|
||||
assert "Q" in hlayout.IsNestedBy[0].RelatedObjects[1].IsNestedBy[0].RelatedObjects[0].Name
|
||||
assert "Q" in hlayout.IsNestedBy[0].RelatedObjects[2].IsNestedBy[0].RelatedObjects[0].Name
|
||||
assert "Z" in hlayout.IsNestedBy[0].RelatedObjects[-1].IsNestedBy[0].RelatedObjects[0].Name
|
||||
assert "A" in referent_nest.RelatedObjects[0].Name
|
||||
assert "Q" in referent_nest.RelatedObjects[1].Name
|
||||
assert "Q" in referent_nest.RelatedObjects[2].Name
|
||||
assert "Z" in referent_nest.RelatedObjects[-1].Name
|
||||
|
||||
vlayout = ifcopenshell.api.alignment.get_vertical_layout(callback_alignment)
|
||||
referent_nest = ifcopenshell.api.alignment.get_referent_nest(None,vlayout)
|
||||
|
||||
assert "a" in referent_nest.RelatedObjects[0].Name
|
||||
assert "q" in referent_nest.RelatedObjects[1].Name
|
||||
assert "q" in referent_nest.RelatedObjects[2].Name
|
||||
assert "z" in referent_nest.RelatedObjects[-1].Name
|
||||
|
||||
assert "a" in vlayout.IsNestedBy[0].RelatedObjects[0].IsNestedBy[0].RelatedObjects[0].Name
|
||||
assert "q" in vlayout.IsNestedBy[0].RelatedObjects[1].IsNestedBy[0].RelatedObjects[0].Name
|
||||
assert "q" in vlayout.IsNestedBy[0].RelatedObjects[2].IsNestedBy[0].RelatedObjects[0].Name
|
||||
assert "z" in vlayout.IsNestedBy[0].RelatedObjects[-1].IsNestedBy[0].RelatedObjects[0].Name
|
||||
|
||||
Reference in New Issue
Block a user