@@ -48,6 +48,18 @@ def it_can_drop_a_specified_header_part(self, drop_rel_):
4848
4949 drop_rel_ .assert_called_once_with (document_part , "rId42" )
5050
51+ def it_provides_access_to_a_header_part_by_rId (
52+ self , related_parts_prop_ , related_parts_ , header_part_
53+ ):
54+ related_parts_prop_ .return_value = related_parts_
55+ related_parts_ .__getitem__ .return_value = header_part_
56+ document_part = DocumentPart (None , None , None , None )
57+
58+ header_part = document_part .header_part ("rId11" )
59+
60+ related_parts_ .__getitem__ .assert_called_once_with ("rId11" )
61+ assert header_part is header_part_
62+
5163 def it_can_save_the_package_to_a_file (self , save_fixture ):
5264 document , file_ = save_fixture
5365 document .save (file_ )
@@ -336,6 +348,14 @@ def part_related_by_(self, request):
336348 def relate_to_ (self , request ):
337349 return method_mock (request , DocumentPart , 'relate_to' )
338350
351+ @pytest .fixture
352+ def related_parts_ (self , request ):
353+ return instance_mock (request , dict )
354+
355+ @pytest .fixture
356+ def related_parts_prop_ (self , request ):
357+ return property_mock (request , DocumentPart , 'related_parts' )
358+
339359 @pytest .fixture
340360 def SettingsPart_ (self , request ):
341361 return class_mock (request , 'docx.parts.document.SettingsPart' )
0 commit comments