Files
IfcOpenShell/src/blenderbim/test/core/test_aggregate.py
T

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

41 lines
1.8 KiB
Python
Raw Normal View History

import blenderbim.core.aggregate as subject
from test.core.bootstrap import ifc, aggregator, collector
class TestEnableEditingAggregate:
def test_run(self, aggregator):
aggregator.enable_editing("obj").should_be_called()
subject.enable_editing_aggregate(aggregator, obj="obj")
class TestDisableEditingAggregate:
def test_run(self, aggregator):
aggregator.disable_editing("obj").should_be_called()
subject.disable_editing_aggregate(aggregator, obj="obj")
class TestAssignObject:
def test_run(self, ifc, aggregator, collector):
aggregator.can_aggregate("relating_obj", "related_obj").should_be_called().will_return(True)
ifc.get_entity("relating_obj").should_be_called().will_return("relating_object")
ifc.get_entity("related_obj").should_be_called().will_return("related_object")
ifc.run(
"aggregate.assign_object", product="related_object", relating_object="relating_object"
).should_be_called().will_return("rel")
aggregator.disable_editing("related_obj").should_be_called()
collector.assign("relating_obj").should_be_called()
collector.assign("related_obj").should_be_called()
assert (
subject.assign_object(ifc, aggregator, collector, relating_obj="relating_obj", related_obj="related_obj")
== "rel"
)
2021-10-06 14:11:54 +11:00
class TestUnassignObject:
def test_run(self, ifc, collector):
ifc.get_entity("related_obj").should_be_called().will_return("related_object")
ifc.run("aggregate.unassign_object", product="related_object").should_be_called().will_return("rel")
collector.assign("relating_obj").should_be_called()
collector.assign("related_obj").should_be_called()
assert subject.unassign_object(ifc, collector, relating_obj="relating_obj", related_obj="related_obj") == "rel"