Optimise create owner history to not rely on a person and organisation lookup, speeding up long procedures

This commit is contained in:
Dion Moult
2021-10-01 11:05:35 +10:00
parent 8bcec29429
commit 0a27308532
11 changed files with 92 additions and 107 deletions
@@ -0,0 +1,18 @@
import test.bootstrap
import ifcopenshell.api
class TestAddRole(test.bootstrap.IFC4):
def test_adding_a_role_to_a_person(self):
person = self.file.createIfcPerson()
role = ifcopenshell.api.run("owner.add_role", self.file, assigned_object=person)
assert role.is_a("IfcActorRole")
assert role.Role == "ARCHITECT"
assert person.Roles == (role,)
def test_adding_a_role_to_an_organisation(self):
organisation = self.file.createIfcOrganization()
role = ifcopenshell.api.run("owner.add_role", self.file, assigned_object=organisation)
assert role.is_a("IfcActorRole")
assert role.Role == "ARCHITECT"
assert organisation.Roles == (role,)