pdf-web-toolkit/tests/test_pdf_util.py
Renovate Bot 935a41fe01
All checks were successful
Auto Deploy pdf-web-tolkit / Check Docker State (push) Successful in 1s
Auto Deploy pdf-web-tolkit / pdf-tools-git-prep (push) Successful in 1s
Auto Deploy pdf-web-tolkit / bld-pdf-tools (push) Successful in 4s
Auto Deploy pdf-web-tolkit / dpy-pdf-tools (push) Successful in 12s
Update dependency pypdf to v5.9.0 (#2)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [pypdf](https://github.com/py-pdf/pypdf) ([changelog](https://pypdf.readthedocs.io/en/latest/meta/CHANGELOG.html)) | minor | `==5.8.0` -> `==5.9.0` |

>  **Important**
>
> Release Notes retrieval for this PR were skipped because no github.com credentials were available.
> If you are self-hosted, please see [this instruction](https://github.com/renovatebot/renovate/blob/master/docs/usage/examples/self-hosting.md#githubcom-token-for-release-notes).

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNDguNiIsInVwZGF0ZWRJblZlciI6IjQxLjE0OC42IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: tidoni <niklasmu@protonmail.ch>
Co-authored-by: Niklas Müller <niklasmu@protonmail.ch>
Reviewed-on: #2
Co-authored-by: Renovate Bot <renovate@git.tidoni-sky.ddnss.de>
Co-committed-by: Renovate Bot <renovate@git.tidoni-sky.ddnss.de>
2025-10-18 13:29:54 +02:00

301 lines
17 KiB
Python

import os
import shutil
from pdf_util.pdf_util import pdf_util
def test_split_pdf():
# Single Pages
test_file = pdf_util("/app/tests/sample_pdfs/sample_1_page.pdf").split_pdf()
print(test_file)
print(os.stat("/app/tests/sample_pdfs/split_pdf/sample_1_page_1.pdf").st_size)
assert os.stat("/app/tests/sample_pdfs/split_pdf/sample_1_page_1.pdf").st_size == 69339
# Two Pages
test_file = pdf_util("/app/tests/sample_pdfs/sample_2_page.pdf").split_pdf()
print(test_file)
print(os.stat("/app/tests/sample_pdfs/split_pdf/sample_2_page_1.pdf").st_size)
assert os.stat("/app/tests/sample_pdfs/split_pdf/sample_2_page_1.pdf").st_size == 1804
print(os.stat("/app/tests/sample_pdfs/split_pdf/sample_2_page_2.pdf").st_size)
assert os.stat("/app/tests/sample_pdfs/split_pdf/sample_2_page_2.pdf").st_size == 1405
# Ten Pages
test_file = pdf_util("/app/tests/sample_pdfs/sample_10_page.pdf").split_pdf()
print(test_file)
print(os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_1.pdf").st_size)
assert os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_1.pdf").st_size == 3167
print(os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_2.pdf").st_size)
assert os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_2.pdf").st_size == 2888
print(os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_3.pdf").st_size)
assert os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_3.pdf").st_size == 6670
print(os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_4.pdf").st_size)
assert os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_4.pdf").st_size == 3043
print(os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_5.pdf").st_size)
assert os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_5.pdf").st_size == 9968
print(os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_6.pdf").st_size)
assert os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_6.pdf").st_size == 5367
print(os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_7.pdf").st_size)
assert os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_7.pdf").st_size == 10093
print(os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_8.pdf").st_size)
assert os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_8.pdf").st_size == 8790
print(os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_9.pdf").st_size)
assert os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_9.pdf").st_size == 30188
print(os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_10.pdf").st_size)
assert os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_10.pdf").st_size == 3789
shutil.rmtree("/app/tests/sample_pdfs/split_pdf/")
def test_split_pdf_int_padding():
# Single Pages
test_file = pdf_util("/app/tests/sample_pdfs/sample_1_page.pdf").split_pdf(True)
print(test_file)
print(os.stat("/app/tests/sample_pdfs/split_pdf/sample_1_page_0001.pdf").st_size)
assert os.stat("/app/tests/sample_pdfs/split_pdf/sample_1_page_0001.pdf").st_size == 69339
# Two Pages
test_file = pdf_util("/app/tests/sample_pdfs/sample_2_page.pdf").split_pdf(True)
print(test_file)
print(os.stat("/app/tests/sample_pdfs/split_pdf/sample_2_page_0001.pdf").st_size)
assert os.stat("/app/tests/sample_pdfs/split_pdf/sample_2_page_0001.pdf").st_size == 1804
print(os.stat("/app/tests/sample_pdfs/split_pdf/sample_2_page_0002.pdf").st_size)
assert os.stat("/app/tests/sample_pdfs/split_pdf/sample_2_page_0002.pdf").st_size == 1405
# Ten Pages
test_file = pdf_util("/app/tests/sample_pdfs/sample_10_page.pdf").split_pdf(True)
print(test_file)
print(os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_0001.pdf").st_size)
assert os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_0001.pdf").st_size == 3167
print(os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_0002.pdf").st_size)
assert os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_0002.pdf").st_size == 2888
print(os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_0003.pdf").st_size)
assert os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_0003.pdf").st_size == 6670
print(os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_0004.pdf").st_size)
assert os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_0004.pdf").st_size == 3043
print(os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_0005.pdf").st_size)
assert os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_0005.pdf").st_size == 9968
print(os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_0006.pdf").st_size)
assert os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_0006.pdf").st_size == 5367
print(os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_0007.pdf").st_size)
assert os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_0007.pdf").st_size == 10093
print(os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_0008.pdf").st_size)
assert os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_0008.pdf").st_size == 8790
print(os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_0009.pdf").st_size)
assert os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_0009.pdf").st_size == 30188
print(os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_0010.pdf").st_size)
assert os.stat("/app/tests/sample_pdfs/split_pdf/sample_10_page_0010.pdf").st_size == 3789
shutil.rmtree("/app/tests/sample_pdfs/split_pdf/")
def test_split_pdf_and_location():
# Single Pages
test_file = pdf_util("/app/tests/sample_pdfs/sample_1_page.pdf").split_pdf_with_location("/tmp/test_directory/", False)
print(test_file)
print(os.stat("/tmp/test_directory/sample_1_page_1.pdf").st_size)
assert os.stat("/tmp/test_directory/sample_1_page_1.pdf").st_size == 69339
test_file = pdf_util("/app/tests/sample_pdfs/sample_1_page.pdf").split_pdf_with_location("/tmp/test_directory/", True)
print(test_file)
print(os.stat("/tmp/test_directory/1.pdf").st_size)
assert os.stat("/tmp/test_directory/1.pdf").st_size == 69339
shutil.rmtree("/tmp/test_directory/")
# Two Pages
test_file = pdf_util("/app/tests/sample_pdfs/sample_2_page.pdf").split_pdf_with_location("/tmp/test_directory/", False)
print(test_file)
print(os.stat("/tmp/test_directory/sample_2_page_1.pdf").st_size)
assert os.stat("/tmp/test_directory/sample_2_page_1.pdf").st_size == 1804
print(os.stat("/tmp/test_directory/sample_2_page_2.pdf").st_size)
assert os.stat("/tmp/test_directory/sample_2_page_2.pdf").st_size == 1405
# Two Pages
test_file = pdf_util("/app/tests/sample_pdfs/sample_2_page.pdf").split_pdf_with_location("/tmp/test_directory/", True)
print(test_file)
print(os.stat("/tmp/test_directory/1.pdf").st_size)
assert os.stat("/tmp/test_directory/1.pdf").st_size == 1804
print(os.stat("/tmp/test_directory/2.pdf").st_size)
assert os.stat("/tmp/test_directory/2.pdf").st_size == 1405
shutil.rmtree("/tmp/test_directory/")
# Ten Pages
test_file = pdf_util("/app/tests/sample_pdfs/sample_10_page.pdf").split_pdf_with_location("/tmp/test_directory/", False)
print(test_file)
print(os.stat("/tmp/test_directory/sample_10_page_1.pdf").st_size)
assert os.stat("/tmp/test_directory/sample_10_page_1.pdf").st_size == 3167
print(os.stat("/tmp/test_directory/sample_10_page_2.pdf").st_size)
assert os.stat("/tmp/test_directory/sample_10_page_2.pdf").st_size == 2888
print(os.stat("/tmp/test_directory/sample_10_page_3.pdf").st_size)
assert os.stat("/tmp/test_directory/sample_10_page_3.pdf").st_size == 6670
print(os.stat("/tmp/test_directory/sample_10_page_4.pdf").st_size)
assert os.stat("/tmp/test_directory/sample_10_page_4.pdf").st_size == 3043
print(os.stat("/tmp/test_directory/sample_10_page_5.pdf").st_size)
assert os.stat("/tmp/test_directory/sample_10_page_5.pdf").st_size == 9968
print(os.stat("/tmp/test_directory/sample_10_page_6.pdf").st_size)
assert os.stat("/tmp/test_directory/sample_10_page_6.pdf").st_size == 5367
print(os.stat("/tmp/test_directory/sample_10_page_7.pdf").st_size)
assert os.stat("/tmp/test_directory/sample_10_page_7.pdf").st_size == 10093
print(os.stat("/tmp/test_directory/sample_10_page_8.pdf").st_size)
assert os.stat("/tmp/test_directory/sample_10_page_8.pdf").st_size == 8790
print(os.stat("/tmp/test_directory/sample_10_page_9.pdf").st_size)
assert os.stat("/tmp/test_directory/sample_10_page_9.pdf").st_size == 30188
print(os.stat("/tmp/test_directory/sample_10_page_10.pdf").st_size)
assert os.stat("/tmp/test_directory/sample_10_page_10.pdf").st_size == 3789
test_file = pdf_util("/app/tests/sample_pdfs/sample_10_page.pdf").split_pdf_with_location("/tmp/test_directory/", True)
print(test_file)
print(os.stat("/tmp/test_directory/1.pdf").st_size)
assert os.stat("/tmp/test_directory/1.pdf").st_size == 3167
print(os.stat("/tmp/test_directory/2.pdf").st_size)
assert os.stat("/tmp/test_directory/2.pdf").st_size == 2888
print(os.stat("/tmp/test_directory/3.pdf").st_size)
assert os.stat("/tmp/test_directory/3.pdf").st_size == 6670
print(os.stat("/tmp/test_directory/4.pdf").st_size)
assert os.stat("/tmp/test_directory/4.pdf").st_size == 3043
print(os.stat("/tmp/test_directory/5.pdf").st_size)
assert os.stat("/tmp/test_directory/5.pdf").st_size == 9968
print(os.stat("/tmp/test_directory/6.pdf").st_size)
assert os.stat("/tmp/test_directory/6.pdf").st_size == 5367
print(os.stat("/tmp/test_directory/7.pdf").st_size)
assert os.stat("/tmp/test_directory/7.pdf").st_size == 10093
print(os.stat("/tmp/test_directory/8.pdf").st_size)
assert os.stat("/tmp/test_directory/8.pdf").st_size == 8790
print(os.stat("/tmp/test_directory/9.pdf").st_size)
assert os.stat("/tmp/test_directory/9.pdf").st_size == 30188
print(os.stat("/tmp/test_directory/10.pdf").st_size)
assert os.stat("/tmp/test_directory/10.pdf").st_size == 3789
shutil.rmtree("/tmp/test_directory/")
def test_split_pdf_and_location_int_padding():
# Single Pages
test_file = pdf_util("/app/tests/sample_pdfs/sample_1_page.pdf").split_pdf_with_location("/tmp/test_directory/", False, True)
print(test_file)
print(os.stat("/tmp/test_directory/sample_1_page_0001.pdf").st_size)
assert os.stat("/tmp/test_directory/sample_1_page_0001.pdf").st_size == 69339
test_file = pdf_util("/app/tests/sample_pdfs/sample_1_page.pdf").split_pdf_with_location("/tmp/test_directory/", True, True)
print(test_file)
print(os.stat("/tmp/test_directory/0001.pdf").st_size)
assert os.stat("/tmp/test_directory/0001.pdf").st_size == 69339
shutil.rmtree("/tmp/test_directory/")
# Two Pages
test_file = pdf_util("/app/tests/sample_pdfs/sample_2_page.pdf").split_pdf_with_location("/tmp/test_directory/", False, True)
print(test_file)
print(os.stat("/tmp/test_directory/sample_2_page_0001.pdf").st_size)
assert os.stat("/tmp/test_directory/sample_2_page_0001.pdf").st_size == 1804
print(os.stat("/tmp/test_directory/sample_2_page_0002.pdf").st_size)
assert os.stat("/tmp/test_directory/sample_2_page_0002.pdf").st_size == 1405
# Two Pages
test_file = pdf_util("/app/tests/sample_pdfs/sample_2_page.pdf").split_pdf_with_location("/tmp/test_directory/", True, True)
print(test_file)
print(os.stat("/tmp/test_directory/0001.pdf").st_size)
assert os.stat("/tmp/test_directory/0001.pdf").st_size == 1804
print(os.stat("/tmp/test_directory/0002.pdf").st_size)
assert os.stat("/tmp/test_directory/0002.pdf").st_size == 1405
shutil.rmtree("/tmp/test_directory/")
# Ten Pages
test_file = pdf_util("/app/tests/sample_pdfs/sample_10_page.pdf").split_pdf_with_location("/tmp/test_directory/", False, True)
print(test_file)
print(os.stat("/tmp/test_directory/sample_10_page_0001.pdf").st_size)
assert os.stat("/tmp/test_directory/sample_10_page_0001.pdf").st_size == 3167
print(os.stat("/tmp/test_directory/sample_10_page_0002.pdf").st_size)
assert os.stat("/tmp/test_directory/sample_10_page_0002.pdf").st_size == 2888
print(os.stat("/tmp/test_directory/sample_10_page_0003.pdf").st_size)
assert os.stat("/tmp/test_directory/sample_10_page_0003.pdf").st_size == 6670
print(os.stat("/tmp/test_directory/sample_10_page_0004.pdf").st_size)
assert os.stat("/tmp/test_directory/sample_10_page_0004.pdf").st_size == 3043
print(os.stat("/tmp/test_directory/sample_10_page_0005.pdf").st_size)
assert os.stat("/tmp/test_directory/sample_10_page_0005.pdf").st_size == 9968
print(os.stat("/tmp/test_directory/sample_10_page_0006.pdf").st_size)
assert os.stat("/tmp/test_directory/sample_10_page_0006.pdf").st_size == 5367
print(os.stat("/tmp/test_directory/sample_10_page_0007.pdf").st_size)
assert os.stat("/tmp/test_directory/sample_10_page_0007.pdf").st_size == 10093
print(os.stat("/tmp/test_directory/sample_10_page_0008.pdf").st_size)
assert os.stat("/tmp/test_directory/sample_10_page_0008.pdf").st_size == 8790
print(os.stat("/tmp/test_directory/sample_10_page_0009.pdf").st_size)
assert os.stat("/tmp/test_directory/sample_10_page_0009.pdf").st_size == 30188
print(os.stat("/tmp/test_directory/sample_10_page_0010.pdf").st_size)
assert os.stat("/tmp/test_directory/sample_10_page_0010.pdf").st_size == 3789
test_file = pdf_util("/app/tests/sample_pdfs/sample_10_page.pdf").split_pdf_with_location("/tmp/test_directory/", True, True)
print(test_file)
print(os.stat("/tmp/test_directory/0001.pdf").st_size)
assert os.stat("/tmp/test_directory/0001.pdf").st_size == 3167
print(os.stat("/tmp/test_directory/0002.pdf").st_size)
assert os.stat("/tmp/test_directory/0002.pdf").st_size == 2888
print(os.stat("/tmp/test_directory/0003.pdf").st_size)
assert os.stat("/tmp/test_directory/0003.pdf").st_size == 6670
print(os.stat("/tmp/test_directory/0004.pdf").st_size)
assert os.stat("/tmp/test_directory/0004.pdf").st_size == 3043
print(os.stat("/tmp/test_directory/0005.pdf").st_size)
assert os.stat("/tmp/test_directory/0005.pdf").st_size == 9968
print(os.stat("/tmp/test_directory/0006.pdf").st_size)
assert os.stat("/tmp/test_directory/0006.pdf").st_size == 5367
print(os.stat("/tmp/test_directory/0007.pdf").st_size)
assert os.stat("/tmp/test_directory/0007.pdf").st_size == 10093
print(os.stat("/tmp/test_directory/0008.pdf").st_size)
assert os.stat("/tmp/test_directory/0008.pdf").st_size == 8790
print(os.stat("/tmp/test_directory/0009.pdf").st_size)
assert os.stat("/tmp/test_directory/0009.pdf").st_size == 30188
print(os.stat("/tmp/test_directory/0010.pdf").st_size)
assert os.stat("/tmp/test_directory/0010.pdf").st_size == 3789
shutil.rmtree("/tmp/test_directory/")
def test_merge_pdf_with():
test_file = pdf_util("/app/tests/sample_pdfs/sample_1_page.pdf").merge_pdf_with("/app/tests/sample_pdfs/sample_2_page.pdf")
print(test_file)
print(os.stat("/app/tests/sample_pdfs/merge_pdf/merger.pdf").st_size)
assert os.stat("/app/tests/sample_pdfs/merge_pdf/merger.pdf").st_size == 71761
test_file = pdf_util("/app/tests/sample_pdfs/sample_1_page.pdf").merge_pdf_with("/app/tests/sample_pdfs/sample_10_page.pdf")
print(test_file)
print(os.stat("/app/tests/sample_pdfs/merge_pdf/merger.pdf").st_size)
assert os.stat("/app/tests/sample_pdfs/merge_pdf/merger.pdf").st_size == 116682
test_file = pdf_util("/app/tests/sample_pdfs/sample_2_page.pdf").merge_pdf_with("/app/tests/sample_pdfs/sample_10_page.pdf")
print(test_file)
print(os.stat("/app/tests/sample_pdfs/merge_pdf/merger.pdf").st_size)
assert os.stat("/app/tests/sample_pdfs/merge_pdf/merger.pdf").st_size == 50065
shutil.rmtree("/app/tests/sample_pdfs/merge_pdf/")
def test_merge_pdf_with_and_location():
test_file = pdf_util("/app/tests/sample_pdfs/sample_1_page.pdf").merge_pdf_with_and_location("/app/tests/sample_pdfs/sample_2_page.pdf", "/tmp/test_directory/merged_file.pdf")
print(test_file)
print(os.stat("/tmp/test_directory/merged_file.pdf").st_size)
assert os.stat("/tmp/test_directory/merged_file.pdf").st_size == 71761
shutil.rmtree("/tmp/test_directory/")
test_file = pdf_util("/app/tests/sample_pdfs/sample_1_page.pdf").merge_pdf_with_and_location("/app/tests/sample_pdfs/sample_10_page.pdf", "/tmp/test_directory/merge_pdf/merger.pdf")
print(test_file)
print(os.stat("/tmp/test_directory/merge_pdf/merger.pdf").st_size)
assert os.stat("/tmp/test_directory/merge_pdf/merger.pdf").st_size == 116682
shutil.rmtree("/tmp/test_directory/")
test_file = pdf_util("/app/tests/sample_pdfs/sample_2_page.pdf").merge_pdf_with_and_location("/app/tests/sample_pdfs/sample_10_page.pdf", "/tmp/test_directory/merge_pdf/bigfile.pdf")
print(test_file)
print(os.stat("/tmp/test_directory/merge_pdf/bigfile.pdf").st_size)
assert os.stat("/tmp/test_directory/merge_pdf/bigfile.pdf").st_size == 50065
shutil.rmtree("/tmp/test_directory/")
def test_rotate_pages():
# Write test code to verify the behavior of the rotate_pages method
pass
def test_ocr_pages():
# Write test code to verify the behavior of the rotate_pages method
pass