From e214f719c9555542bd05f9410198d73f261bb93a Mon Sep 17 00:00:00 2001 From: Florian Brandes Date: Sat, 2 Apr 2022 10:21:51 +0200 Subject: [PATCH] add more tests Signed-off-by: Florian Brandes --- .../barcodes/patch-code-t-middle_reverse.pdf | Bin 0 -> 34337 bytes .../samples/barcodes/several-patcht-codes.pdf | Bin 0 -> 78234 bytes src/documents/tests/test_tasks.py | 20 ++++++++++++++++++ 3 files changed, 20 insertions(+) create mode 100644 src/documents/tests/samples/barcodes/patch-code-t-middle_reverse.pdf create mode 100644 src/documents/tests/samples/barcodes/several-patcht-codes.pdf diff --git a/src/documents/tests/samples/barcodes/patch-code-t-middle_reverse.pdf b/src/documents/tests/samples/barcodes/patch-code-t-middle_reverse.pdf new file mode 100644 index 0000000000000000000000000000000000000000..e1f8bc39c05057443802310ad697aaf930e51364 GIT binary patch literal 34337 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 M2!mn7Gp#KD4UYY6%m4rY literal 0 HcmV?d00001 diff --git a/src/documents/tests/samples/barcodes/several-patcht-codes.pdf b/src/documents/tests/samples/barcodes/several-patcht-codes.pdf new file mode 100644 index 0000000000000000000000000000000000000000..de4c715c82f3642d5faa6f9ac0d8789059507cd4 GIT binary patch literal 78234 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 DTZsR{ literal 0 HcmV?d00001 diff --git a/src/documents/tests/test_tasks.py b/src/documents/tests/test_tasks.py index 46be59d53..8160dd3f3 100644 --- a/src/documents/tests/test_tasks.py +++ b/src/documents/tests/test_tasks.py @@ -229,6 +229,26 @@ class TestTasks(DirectoriesMixin, TestCase): pages = tasks.scan_file_for_separating_barcodes(test_file) self.assertEqual(pages, [1]) + def test_scan_file_for_separating_barcodes4(self): + test_file = os.path.join( + os.path.dirname(__file__), + "samples", + "barcodes", + "several-patcht-codes.pdf", + ) + pages = tasks.scan_file_for_separating_barcodes(test_file) + self.assertEqual(pages, [2, 5]) + + def test_scan_file_for_separating_barcodes_upsidedown(self): + test_file = os.path.join( + os.path.dirname(__file__), + "samples", + "barcodes", + "patch-code-t-middle_reverse.pdf", + ) + pages = tasks.scan_file_for_separating_barcodes(test_file) + self.assertEqual(pages, [1]) + def test_scan_file_for_separating_qr_barcodes(self): test_file = os.path.join( os.path.dirname(__file__),