@@ -531,6 +531,29 @@ def it_knows_when_it_has_a_definition_to_help(self, has_definition_fixture):
531531
532532 assert has_definition is expected_value
533533
534+ def it_provides_access_to_the_prior_Footer_to_help (
535+ self , request , document_part_ , footer_
536+ ):
537+ doc_elm = element ("w:document/(w:sectPr,w:sectPr)" )
538+ prior_sectPr , sectPr = doc_elm [0 ], doc_elm [1 ]
539+ footer = _Footer (sectPr , document_part_ )
540+ # ---mock must occur after construction of "real" footer---
541+ _Footer_ = class_mock (request , "docx.section._Footer" , return_value = footer_ )
542+
543+ prior_footer = footer ._prior_headerfooter
544+
545+ _Footer_ .assert_called_once_with (prior_sectPr , document_part_ )
546+ assert prior_footer is footer_
547+
548+ def but_it_returns_None_when_its_the_first_footer (self ):
549+ doc_elm = element ("w:document/w:sectPr" )
550+ sectPr = doc_elm [0 ]
551+ footer = _Footer (sectPr , None )
552+
553+ prior_footer = footer ._prior_headerfooter
554+
555+ assert prior_footer is None
556+
534557 # fixtures -------------------------------------------------------
535558
536559 @pytest .fixture (
@@ -549,6 +572,10 @@ def has_definition_fixture(self, request):
549572 def document_part_ (self , request ):
550573 return instance_mock (request , DocumentPart )
551574
575+ @pytest .fixture
576+ def footer_ (self , request ):
577+ return instance_mock (request , _Footer )
578+
552579 @pytest .fixture
553580 def footer_part_ (self , request ):
554581 return instance_mock (request , FooterPart )
0 commit comments