Skip to content

Commit 773a0d9

Browse files
charloteberleinJorjMcKie
authored andcommitted
Add tests
1 parent 11f6481 commit 773a0d9

1 file changed

Lines changed: 28 additions & 0 deletions

File tree

‎tests/test_metadata.py‎

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,34 @@ def test_erase_meta():
2727
assert statement2 or statement1
2828

2929

30+
def test_clear_metadata_xref_stream():
31+
"""set_metadata({}) must clear metadata on a cross-reference-stream PDF."""
32+
doc = pymupdf.open()
33+
doc.new_page()
34+
doc.set_metadata({"title": "Title", "author": "Author"})
35+
36+
doc = pymupdf.open("pdf", doc.tobytes(use_objstms=1))
37+
assert doc.xref_get_key(-1, "Type") == ("name", "/XRef")
38+
39+
doc.set_metadata({})
40+
assert not doc.metadata["title"]
41+
assert not doc.metadata["author"]
42+
43+
44+
def test_scrub_xref_stream():
45+
"""scrub() must clear metadata on a cross-reference-stream PDF."""
46+
doc = pymupdf.open()
47+
doc.new_page()
48+
doc.set_metadata({"title": "Title", "author": "Author"})
49+
50+
doc = pymupdf.open("pdf", doc.tobytes(use_objstms=1))
51+
assert doc.xref_get_key(-1, "Type") == ("name", "/XRef")
52+
53+
doc.scrub()
54+
assert not doc.metadata["title"]
55+
assert not doc.metadata["author"]
56+
57+
3058
def test_3237():
3159
filename = os.path.abspath(f'{__file__}/../../tests/resources/001003ED.pdf')
3260
with pymupdf.open(filename) as doc:

0 commit comments

Comments
 (0)