backend improvements

- move_page
- merge_all_single_pages
- constructor with optional parameter
This commit is contained in:
Niklas Müller 2024-01-22 16:47:35 +01:00
parent f4b8029593
commit 6b74b89029
6 changed files with 300 additions and 38 deletions

View file

@ -1,15 +1,15 @@
import pytest
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)
@ -17,7 +17,7 @@ def test_split_pdf():
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)
@ -45,20 +45,61 @@ def test_split_pdf():
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 == 8578
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/")
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)
@ -75,9 +116,8 @@ def test_split_pdf_and_location():
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/")
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)
@ -129,6 +169,88 @@ def test_split_pdf_and_location():
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 == 8578
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 == 8578
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)
@ -168,10 +290,12 @@ def test_merge_pdf_with_and_location():
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