31 Commits

Author SHA1 Message Date
Trenton H
1396f25419 Updates handling of barcodes to encapsulate logic, moving it out of tasks and into barcodes 2023-05-22 06:52:31 -07:00
Trenton H
30655f1b73 Fixes ruff not running isort against the codebase 2023-04-26 09:35:27 -07:00
Trenton Holmes
93f5b989a4 Fixes barcode tests not running 2023-04-01 17:38:18 -07:00
Trenton H
d2c02b9102 Configures ruff as the one stop linter and resolves warnings it raised 2023-04-01 17:03:52 -07:00
Trenton H
36a6df0bae Creates a data model for the document consumption, allowing stronger typing of arguments and setting of some information about the file only once 2023-04-01 11:05:34 -07:00
Trenton H
f124228e86 Instead of using PIL directly to convert TIFF to PDF, use the existing library of img2pdf 2023-03-20 13:48:05 -07:00
Marvin Gaube
cca607f7b8 fix: skip tiff tests for zxing 2023-03-20 20:59:59 +01:00
Marvin Gaube
c66a0ec82e feature: Add support for zxing as barcode scanning lib 2023-03-19 13:48:35 +01:00
Trenton H
ec2b0eb308 Changes out the settings and a decent amount of test code to be pathlib compatible 2023-03-06 09:16:07 -08:00
Trenton Holmes
acfa7d633d Creates a mix-in for asserting file system states 2023-02-20 10:25:21 -08:00
Fabian Ohler
c08b19c7a9 Feature: split documents on ASN barcode (#2554)
* also split documents when an ASN barcode is found

* linter

* fix test case parameters

* avoid pre-python-3.9 features

* simplify dict-creation in tests

* simplify dict-creation in tests for empty dicts

* Add test cases for the splitting by ASN barcode feature

* deleted supporting files for test case construction
2023-02-01 01:13:30 -08:00
Trenton H
e3182aa9df Minor tweak to password test to ensure the right lines were hit 2023-01-27 12:24:47 -08:00
Trenton H
781049aec9 Moves ASN barcode testing into a dedicated class 2023-01-27 12:24:47 -08:00
Trenton H
b19ada7a41 Removes pikepdf based scanning, fixes up unit testing (+ commenting) 2023-01-27 12:24:47 -08:00
shamoon
7dad9f29a1 Merge pull request #2498 from paperless-ngx/fix-2496
Fix: limit asn integer size
2023-01-24 10:37:04 -08:00
Trenton H
68c9f7a614 Rescales images from PDFs so zbar can better find them 2023-01-24 10:30:53 -08:00
Trenton H
83c5e051fd Adjust the barcode to ASN range check and add test case to cover the check 2023-01-24 10:30:32 -08:00
Trenton H
3251ba35d4 Adds given/when/then commenting and adds an end to end test to verify the read ASN is provided to the consumer 2023-01-24 09:43:52 -08:00
Trenton H
1102a18697 Use dataclasses to group data about barcodes in documents 2023-01-24 09:43:52 -08:00
Peter Kappelt
8ed3740c98 Extended tests for ASN barcode parsing 2023-01-24 09:43:52 -08:00
Peter Kappelt
252749a827 update existing tests to use modified barcode api 2023-01-24 09:43:52 -08:00
Trenton H
6f23cfe78c Resolves minor flake8 warnings in the test suite 2023-01-05 08:39:48 -08:00
Trenton H
189d02dfe6 Always use pikepdf, then pdf2image if needed to check for barcodes instead of requiring/allowing configuration 2022-11-09 13:01:39 -08:00
Trenton H
1e1f0347fa More smoothly handle the case of a password protected PDF for barcodes 2022-10-24 13:16:14 -07:00
Trenton H
6d2851c693 Allows using pdf2image instead of pikepdf if desired 2022-10-24 09:58:34 -07:00
Trenton Holmes
ddef90d96e Adds specific handling for CCITT Group 4, which pikepdf decodes, but not correctly 2022-10-11 13:51:14 -07:00
Trenton H
c888b3dfd3 In case pikepdf fails to convert an image to a PIL image, fall back to converting pages to PIL images 2022-10-11 13:51:13 -07:00
Trenton H
0c08b16402 Catch the new error raised by redis when it can't find the broker and stub out the call for testing 2022-10-10 14:21:42 -07:00
Trenton Holmes
b21f64de8a Updates how barcodes are detected, using pikepdf images, instead of converting each page to an image 2022-09-16 09:08:16 -07:00
Trenton Holmes
33a4a273a3 Fixes the seperation of files by barcode, during the case where 2 barcodes appear back to back 2022-09-14 14:00:37 -07:00
Trenton Holmes
af204426af Moves the barcode related functionality out of tasks and into its own location. Splits up the testing based on that 2022-07-02 16:19:22 +02:00