diff tests/test_embeddedfiles.py @ 1:1d09e1dec1d9 upstream

ADD: PyMuPDF v1.26.4: the original sdist. It does not yet contain MuPDF. This normally will be downloaded when building PyMuPDF.
author Franz Glasner <fzglas.hg@dom66.de>
date Mon, 15 Sep 2025 11:37:51 +0200
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/test_embeddedfiles.py	Mon Sep 15 11:37:51 2025 +0200
@@ -0,0 +1,43 @@
+"""
+Tests for PDF EmbeddedFiles functions.
+"""
+import pymupdf
+
+
+def test_embedded1():
+    doc = pymupdf.open()
+    buffer = b"123456678790qwexcvnmhofbnmfsdg4589754uiofjkb-"
+    doc.embfile_add(
+        "file1",
+        buffer,
+        filename="testfile.txt",
+        ufilename="testfile-u.txt",
+        desc="Description of some sort",
+    )
+    assert doc.embfile_count() == 1
+    assert doc.embfile_names() == ["file1"]
+    assert doc.embfile_info(0)["name"] == "file1"
+    doc.embfile_upd(0, filename="new-filename.txt")
+    assert doc.embfile_info(0)["filename"] == "new-filename.txt"
+    assert doc.embfile_get(0) == buffer
+    doc.embfile_del(0)
+    assert doc.embfile_count() == 0
+
+def test_4050():
+    with pymupdf.open() as document:
+        document.embfile_add('test', b'foobar', desc='some text')
+        d = document.embfile_info('test')
+        print(f'{d=}')
+        # Date is non-trivial to test for.
+        del d['creationDate']
+        del d['modDate']
+        assert d == {
+                'name': 'test',
+                'collection': 0,
+                'filename': 'test',
+                'ufilename': 'test',
+                'description': 'some text',
+                'size': 6,
+                'length': 6,
+                }
+