Example #1
0
 def it_can_iterate_over_parts_by_walking_rels_graph(self):
     # +----------+       +--------+
     # | pkg_rels |-----> | part_1 |
     # +----------+       +--------+
     #      |               |    ^
     #      v               v    |
     #   external         +--------+
     #                    | part_2 |
     #                    +--------+
     part1, part2 = (Mock(name='part1'), Mock(name='part2'))
     part1.rels = {
         1: Mock(name='rel1', is_external=False, target_part=part2)
     }
     part2.rels = {
         1: Mock(name='rel2', is_external=False, target_part=part1)
     }
     pkg = OpcPackage()
     pkg._rels = {
         1: Mock(name='rel3', is_external=False, target_part=part1),
         2: Mock(name='rel4', is_external=True),
     }
     # verify -----------------------
     assert part1 in pkg.iter_parts()
     assert part2 in pkg.iter_parts()
     assert len([p for p in pkg.iter_parts()]) == 2
Example #2
0
 def related_part_fixture_(self, request, rels_, reltype):
     related_part_ = instance_mock(request, Part, name='related_part_')
     rels_.part_with_reltype.return_value = related_part_
     pkg = OpcPackage()
     pkg._rels = rels_
     return pkg, reltype, related_part_
Example #3
0
 def pkg_with_rels_(self, request, rels_):
     pkg = OpcPackage()
     pkg._rels = rels_
     return pkg