@@ -1118,7 +1118,7 @@ def test_append_multiple():
11181118
11191119
11201120@pytest .mark .samples ()
1121- def test_set_page_label (pdf_file_path ):
1121+ def test_set_page_label ():
11221122 src = RESOURCE_ROOT / "GeoBase_NHNC1_Data_Model_UML_EN.pdf" # File without labels
11231123 reader = PdfReader (src )
11241124
@@ -1154,8 +1154,9 @@ def test_set_page_label(pdf_file_path):
11541154 writer .set_page_label (11 , 11 , "/r" )
11551155 writer .set_page_label (12 , 13 , "/R" )
11561156 writer .set_page_label (17 , 18 , "/R" )
1157- writer .write (pdf_file_path )
1158- assert PdfReader (pdf_file_path ).page_labels == expected
1157+ _ , buf = writer .write (BytesIO ())
1158+ buf .seek (0 )
1159+ assert PdfReader (buf ).page_labels == expected
11591160
11601161 writer = PdfWriter () # Same labels, different set order
11611162 writer .clone_document_from_reader (reader )
@@ -1165,8 +1166,9 @@ def test_set_page_label(pdf_file_path):
11651166 writer .set_page_label (0 , 1 , "/r" )
11661167 writer .set_page_label (12 , 13 , "/R" )
11671168 writer .set_page_label (11 , 11 , "/r" )
1168- writer .write (pdf_file_path )
1169- assert PdfReader (pdf_file_path ).page_labels == expected
1169+ _ , buf = writer .write (BytesIO ())
1170+ buf .seek (0 )
1171+ assert PdfReader (buf ).page_labels == expected
11701172
11711173 # Tests labels assigned only in the middle
11721174 # Tests label assigned to a range already containing labled ranges
@@ -1176,8 +1178,9 @@ def test_set_page_label(pdf_file_path):
11761178 writer .set_page_label (3 , 4 , "/a" )
11771179 writer .set_page_label (5 , 5 , "/A" )
11781180 writer .set_page_label (2 , 6 , "/r" )
1179- writer .write (pdf_file_path )
1180- assert PdfReader (pdf_file_path ).page_labels [: len (expected )] == expected
1181+ _ , buf = writer .write (BytesIO ())
1182+ buf .seek (0 )
1183+ assert PdfReader (buf ).page_labels [: len (expected )] == expected
11811184
11821185 # Tests labels assigned inside a previously existing range
11831186 expected = ["1" , "2" , "i" , "a" , "b" , "A" , "1" , "1" , "2" ]
@@ -1187,8 +1190,9 @@ def test_set_page_label(pdf_file_path):
11871190 writer .set_page_label (2 , 6 , "/r" )
11881191 writer .set_page_label (3 , 4 , "/a" )
11891192 writer .set_page_label (5 , 5 , "/A" )
1190- writer .write (pdf_file_path )
1191- assert PdfReader (pdf_file_path ).page_labels [: len (expected )] == expected
1193+ _ , buf = writer .write (BytesIO ())
1194+ buf .seek (0 )
1195+ assert PdfReader (buf ).page_labels [: len (expected )] == expected
11921196
11931197 # Tests invalid user input
11941198 writer = PdfWriter ()
@@ -1212,7 +1216,6 @@ def test_set_page_label(pdf_file_path):
12121216 ):
12131217 writer .set_page_label (0 , 5 , "/r" , start = - 1 )
12141218
1215- pdf_file_path .unlink ()
12161219
12171220 src = (
12181221 SAMPLE_ROOT / "009-pdflatex-geotopo/GeoTopo.pdf"
@@ -1224,18 +1227,18 @@ def test_set_page_label(pdf_file_path):
12241227 writer = PdfWriter ()
12251228 writer .clone_document_from_reader (reader )
12261229 writer .set_page_label (2 , 3 , "/A" )
1227- writer .write (pdf_file_path )
1228- assert PdfReader (pdf_file_path ).page_labels [: len (expected )] == expected
1230+ _ , buf = writer .write (BytesIO ())
1231+ buf .seek (0 )
1232+ assert PdfReader (buf ).page_labels [: len (expected )] == expected
12291233
12301234 # Tests replacing existing lables
12311235 expected = ["A" , "B" , "1" , "1" , "2" ]
12321236 writer = PdfWriter ()
12331237 writer .clone_document_from_reader (reader )
12341238 writer .set_page_label (0 , 1 , "/A" )
1235- writer .write (pdf_file_path )
1236- assert PdfReader (pdf_file_path ).page_labels [: len (expected )] == expected
1237-
1238- pdf_file_path .unlink ()
1239+ _ , buf = writer .write (BytesIO ())
1240+ buf .seek (0 )
1241+ assert PdfReader (buf ).page_labels [: len (expected )] == expected
12391242
12401243 # Tests prefix and start.
12411244 src = RESOURCE_ROOT / "issue-604.pdf" # File without page labels
@@ -1250,7 +1253,7 @@ def test_set_page_label(pdf_file_path):
12501253 writer .set_page_label (11 , 21 , "/D" , prefix = "PAP-" )
12511254 writer .set_page_label (22 , 30 , "/D" , prefix = "FOLL-" )
12521255 writer .set_page_label (31 , 39 , "/D" , prefix = "HURT-" )
1253- writer .write (pdf_file_path )
1256+ writer .write (BytesIO () )
12541257
12551258
12561259@pytest .mark .enable_socket ()
@@ -1452,7 +1455,6 @@ def test_named_dest_page_number():
14521455
14531456
14541457def test_update_form_fields (tmp_path ):
1455- write_data_here = tmp_path / "out.pdf"
14561458 writer = PdfWriter (clone_from = RESOURCE_ROOT / "FormTestFromOo.pdf" )
14571459 writer .update_page_form_field_values (
14581460 writer .pages [0 ],
@@ -1476,8 +1478,8 @@ def test_update_form_fields(tmp_path):
14761478 auto_regenerate = False ,
14771479 )
14781480
1479- writer .write (write_data_here )
1480- reader = PdfReader (write_data_here )
1481+ _ , buf = writer .write (BytesIO () )
1482+ reader = PdfReader (buf )
14811483 flds = reader .get_fields ()
14821484 assert flds ["CheckBox1" ]["/V" ] == "/Yes"
14831485 assert flds ["CheckBox1" ].indirect_reference .get_object ()["/AS" ] == "/Yes"
@@ -1499,8 +1501,6 @@ def test_update_form_fields(tmp_path):
14991501 assert all (x in flds ["RadioGroup1" ]["/_States_" ] for x in ["/1" , "/2" , "/3" ])
15001502 assert all (x in flds ["Liste1" ]["/_States_" ] for x in ["Liste1" , "Liste2" , "Liste3" ])
15011503
1502- Path (write_data_here ).unlink ()
1503-
15041504
15051505@pytest .mark .enable_socket ()
15061506def test_iss1862 ():
0 commit comments