Empty psets are purged to discourage invalid psets with no properties

This commit is contained in:
Dion Moult
2023-03-19 13:13:15 +11:00
parent 32e47d03d4
commit bcc399b842
3 changed files with 42 additions and 11 deletions
+13
View File
@@ -36,3 +36,16 @@ class TestGetElementPset(NewFile):
element = ifc.createIfcWall()
pset = ifcopenshell.api.run("pset.add_pset", ifc, product=element, name="Foo")
assert subject.get_element_pset(element, "Foo") == pset
class TestIsPsetEmpty(NewFile):
def test_run(self):
ifc = ifcopenshell.file()
tool.Ifc.set(ifc)
element = ifc.createIfcWall()
pset = ifcopenshell.api.run("pset.add_pset", ifc, product=element, name="Foo")
assert subject.is_pset_empty(pset) is True
ifcopenshell.api.run("pset.edit_pset", ifc, pset=pset, properties={"Foo": "Bar"})
assert subject.is_pset_empty(pset) is False
ifcopenshell.api.run("pset.edit_pset", ifc, pset=pset, properties={"Foo": None})
assert subject.is_pset_empty(pset) is True