@@ -43,6 +43,11 @@ def PhysPkgReader_(self, request):
4343 def _SerializedPart_ (self , request ):
4444 return class_mock ('opc.pkgreader._SerializedPart' , request )
4545
46+ @pytest .fixture
47+ def _SerializedRelationshipCollection_ (self , request ):
48+ return class_mock ('opc.pkgreader._SerializedRelationshipCollection' ,
49+ request )
50+
4651 @pytest .fixture
4752 def _srels_for (self , request ):
4853 return method_mock (PackageReader , '_srels_for' , request )
@@ -155,3 +160,18 @@ def it_can_walk_phys_pkg_parts(self, _srels_for):
155160 (partname_3 , part_3_blob , part_3_srels ),
156161 ]
157162 assert generated_tuples == expected_tuples
163+
164+ def it_can_retrieve_srels_for_a_source_uri (
165+ self , _SerializedRelationshipCollection_ ):
166+ # mockery ----------------------
167+ phys_reader = Mock (name = 'phys_reader' )
168+ source_uri = Mock (name = 'source_uri' )
169+ rels_xml = phys_reader .rels_xml_for .return_value
170+ load_from_xml = _SerializedRelationshipCollection_ .load_from_xml
171+ srels = load_from_xml .return_value
172+ # exercise ---------------------
173+ retval = PackageReader ._srels_for (phys_reader , source_uri )
174+ # verify -----------------------
175+ phys_reader .rels_xml_for .assert_called_once_with (source_uri )
176+ load_from_xml .assert_called_once_with (source_uri .baseURI , rels_xml )
177+ assert retval == srels
0 commit comments