diff --git a/docs/extras/code_samples/bank_account_details_v1.txt b/docs/extras/code_samples/bank_account_details_v1.txt deleted file mode 100644 index 380d0adb..00000000 --- a/docs/extras/code_samples/bank_account_details_v1.txt +++ /dev/null @@ -1,25 +0,0 @@ -# -# Install the Python client library by running: -# pip install mindee -# - -from mindee.v1 import Client, PredictResponse, product -from mindee import PathInput - -# Init a new client -mindee_client = Client(api_key="my-api-key") - -# Load a file from disk -input_doc = PathInput("/path/to/the/file.ext") - -# Load a file from disk and parse it. -result: PredictResponse = mindee_client.parse( - product.fr.BankAccountDetailsV1, - input_doc, -) - -# Print a summary of the API result -print(result.document) - -# Print the document-level summary -# print(result.document.inference.prediction) diff --git a/docs/extras/code_samples/bank_check_v1.txt b/docs/extras/code_samples/bank_check_v1.txt deleted file mode 100644 index d0550e6b..00000000 --- a/docs/extras/code_samples/bank_check_v1.txt +++ /dev/null @@ -1,25 +0,0 @@ -# -# Install the Python client library by running: -# pip install mindee -# - -from mindee.v1 import Client, PredictResponse, product -from mindee import PathInput - -# Init a new client -mindee_client = Client(api_key="my-api-key") - -# Load a file from disk -input_doc = PathInput("/path/to/the/file.ext") - -# Load a file from disk and parse it. -result: PredictResponse = mindee_client.parse( - product.us.BankCheckV1, - input_doc, -) - -# Print a summary of the API result -print(result.document) - -# Print the document-level summary -# print(result.document.inference.prediction) diff --git a/docs/extras/code_samples/barcode_reader_v1.txt b/docs/extras/code_samples/barcode_reader_v1.txt deleted file mode 100644 index 637a079d..00000000 --- a/docs/extras/code_samples/barcode_reader_v1.txt +++ /dev/null @@ -1,25 +0,0 @@ -# -# Install the Python client library by running: -# pip install mindee -# - -from mindee.v1 import Client, PredictResponse, product -from mindee import PathInput - -# Init a new client -mindee_client = Client(api_key="my-api-key") - -# Load a file from disk -input_doc = PathInput("/path/to/the/file.ext") - -# Load a file from disk and parse it. -result: PredictResponse = mindee_client.parse( - product.BarcodeReaderV1, - input_doc, -) - -# Print a summary of the API result -print(result.document) - -# Print the document-level summary -# print(result.document.inference.prediction) diff --git a/docs/extras/code_samples/idcard_fr_v1.txt b/docs/extras/code_samples/idcard_fr_v1.txt deleted file mode 100644 index 84ac3246..00000000 --- a/docs/extras/code_samples/idcard_fr_v1.txt +++ /dev/null @@ -1,25 +0,0 @@ -# -# Install the Python client library by running: -# pip install mindee -# - -from mindee.v1 import Client, PredictResponse, product -from mindee import PathInput - -# Init a new client -mindee_client = Client(api_key="my-api-key") - -# Load a file from disk -input_doc = PathInput("/path/to/the/file.ext") - -# Load a file from disk and parse it. -result: PredictResponse = mindee_client.parse( - product.fr.IdCardV1, - input_doc, -) - -# Print a summary of the API result -print(result.document) - -# Print the document-level summary -# print(result.document.inference.prediction) diff --git a/docs/index.rst b/docs/index.rst index ff17a908..1e1b9790 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -23,5 +23,4 @@ https://developers.mindee.com/docs/python-sdk pdf v1/index v2/index - client_mixin logger diff --git a/docs/v1/product/barcode_reader_v1.rst b/docs/v1/product/barcode_reader_v1.rst deleted file mode 100644 index ff0598be..00000000 --- a/docs/v1/product/barcode_reader_v1.rst +++ /dev/null @@ -1,15 +0,0 @@ -Barcode Reader V1 ------------------ - -**Sample Code:** - -.. literalinclude:: /extras/code_samples/barcode_reader_v1.txt - :language: Python - -.. autoclass:: mindee.v1.product.barcode_reader.barcode_reader_v1.BarcodeReaderV1 - :members: - :inherited-members: - -.. autoclass:: mindee.v1.product.barcode_reader.barcode_reader_v1_document.BarcodeReaderV1Document - :members: - :inherited-members: diff --git a/docs/v1/product/fr/bank_account_details_v1.rst b/docs/v1/product/fr/bank_account_details_v1.rst deleted file mode 100644 index 55164faf..00000000 --- a/docs/v1/product/fr/bank_account_details_v1.rst +++ /dev/null @@ -1,15 +0,0 @@ -Bank Account Details V1 ------------------------ - -**Sample Code:** - -.. literalinclude:: /extras/code_samples/bank_account_details_v1.txt - :language: Python - -.. autoclass:: mindee.v1.product.fr.bank_account_details.bank_account_details_v1.BankAccountDetailsV1 - :members: - :inherited-members: - -.. autoclass:: mindee.v1.product.fr.bank_account_details.bank_account_details_v1_document.BankAccountDetailsV1Document - :members: - :inherited-members: diff --git a/docs/v1/product/fr/id_card_v1.rst b/docs/v1/product/fr/id_card_v1.rst deleted file mode 100644 index 4b0aa676..00000000 --- a/docs/v1/product/fr/id_card_v1.rst +++ /dev/null @@ -1,19 +0,0 @@ -Carte Nationale d'Identité V1 ------------------------------ - -**Sample Code:** - -.. literalinclude:: /extras/code_samples/idcard_fr_v1.txt - :language: Python - -.. autoclass:: mindee.v1.product.fr.id_card.id_card_v1.IdCardV1 - :members: - :inherited-members: - -.. autoclass:: mindee.v1.product.fr.id_card.id_card_v1_document.IdCardV1Document - :members: - :inherited-members: - -.. autoclass:: mindee.v1.product.fr.id_card.id_card_v1_page.IdCardV1Page - :members: - :inherited-members: diff --git a/docs/v1/product/index.rst b/docs/v1/product/index.rst index d1f26a33..f90a6c8b 100644 --- a/docs/v1/product/index.rst +++ b/docs/v1/product/index.rst @@ -10,7 +10,6 @@ Region-Specific :maxdepth: 1 ./fr/index - ./us/index International ############# diff --git a/docs/v1/product/us/bank_check_v1.rst b/docs/v1/product/us/bank_check_v1.rst deleted file mode 100644 index 06decc31..00000000 --- a/docs/v1/product/us/bank_check_v1.rst +++ /dev/null @@ -1,19 +0,0 @@ -Bank Check V1 -------------- - -**Sample Code:** - -.. literalinclude:: /extras/code_samples/bank_check_v1.txt - :language: Python - -.. autoclass:: mindee.v1.product.us.bank_check.bank_check_v1.BankCheckV1 - :members: - :inherited-members: - -.. autoclass:: mindee.v1.product.us.bank_check.bank_check_v1_document.BankCheckV1Document - :members: - :inherited-members: - -.. autoclass:: mindee.v1.product.us.bank_check.bank_check_v1_page.BankCheckV1Page - :members: - :inherited-members: diff --git a/docs/v1/product/us/index.rst b/docs/v1/product/us/index.rst deleted file mode 100644 index 2adaac7d..00000000 --- a/docs/v1/product/us/index.rst +++ /dev/null @@ -1,8 +0,0 @@ -United States -------------- - -.. toctree:: - :maxdepth: 1 - :glob: - - ./* diff --git a/docs/v2/file_operations.rst b/docs/v2/file_operations.rst index 55d0a194..c2ab6d25 100644 --- a/docs/v2/file_operations.rst +++ b/docs/v2/file_operations.rst @@ -7,20 +7,8 @@ Crop :members: :inherited-members: -Crop Files -========== -.. autoclass:: mindee.v2.file_operations.crop_files.CropFiles - :members: - :inherited-members: - Split ===== .. automodule:: mindee.v2.file_operations.split :members: :inherited-members: - -Split Files -=========== -.. autoclass:: mindee.v2.file_operations.split_files.SplitFiles - :members: - :inherited-members: diff --git a/docs/v2/parsing/inference/index.rst b/docs/v2/parsing/inference/index.rst index e3706eef..0498bd21 100644 --- a/docs/v2/parsing/inference/index.rst +++ b/docs/v2/parsing/inference/index.rst @@ -14,9 +14,9 @@ Base Inference :members: :inherited-members: -Base Response -============= -.. autoclass:: mindee.v2.parsing.inference.base_response.BaseResponse +Base Inference Response +======================= +.. autoclass:: mindee.v2.parsing.inference.base_inference_response.BaseInferenceResponse :members: :inherited-members: diff --git a/docs/v2/product/extraction/params.rst b/docs/v2/product/extraction/params.rst index dfeda273..203b66d0 100644 --- a/docs/v2/product/extraction/params.rst +++ b/docs/v2/product/extraction/params.rst @@ -24,9 +24,3 @@ Data Schema Replace .. autoclass:: mindee.v2.product.extraction.params.data_schema_replace.DataSchemaReplace :members: :inherited-members: - -String Data Class ------------------ -.. autoclass:: mindee.v2.product.extraction.params.string_data_class.StringDataClass - :members: - :inherited-members: diff --git a/mindee/v1/commands/cli_products.py b/mindee/v1/commands/cli_products.py index 49d125a4..5f4b09eb 100644 --- a/mindee/v1/commands/cli_products.py +++ b/mindee/v1/commands/cli_products.py @@ -28,12 +28,6 @@ class CommandConfig(Generic[TypeInference]): is_sync=True, is_async=True, ), - "barcode-reader": CommandConfig( - help="Barcode Reader", - doc_class=product.BarcodeReaderV1, - is_sync=True, - is_async=False, - ), "cropper": CommandConfig( help="Cropper", doc_class=product.CropperV1, @@ -100,10 +94,4 @@ class CommandConfig(Generic[TypeInference]): is_sync=True, is_async=True, ), - "us-bank-check": CommandConfig( - help="Bank Check", - doc_class=product.us.BankCheckV1, - is_sync=True, - is_async=False, - ), } diff --git a/mindee/v1/product/__init__.py b/mindee/v1/product/__init__.py index 5e5516c2..029a28af 100644 --- a/mindee/v1/product/__init__.py +++ b/mindee/v1/product/__init__.py @@ -1,8 +1,4 @@ -from mindee.v1.product import fr, us -from mindee.v1.product.barcode_reader.barcode_reader_v1 import BarcodeReaderV1 -from mindee.v1.product.barcode_reader.barcode_reader_v1_document import ( - BarcodeReaderV1Document, -) +from mindee.v1.product import fr from mindee.v1.product.cropper.cropper_v1 import CropperV1 from mindee.v1.product.cropper.cropper_v1_document import ( CropperV1Document, @@ -62,8 +58,6 @@ ) __all__ = [ - "BarcodeReaderV1", - "BarcodeReaderV1Document", "CropperV1", "CropperV1Document", "CropperV1Page", @@ -92,5 +86,4 @@ "ReceiptV5Document", "ReceiptV5LineItem", "fr", - "us", ] diff --git a/mindee/v1/product/barcode_reader/__init__.py b/mindee/v1/product/barcode_reader/__init__.py deleted file mode 100644 index 3d7d1d5f..00000000 --- a/mindee/v1/product/barcode_reader/__init__.py +++ /dev/null @@ -1,9 +0,0 @@ -from mindee.v1.product.barcode_reader.barcode_reader_v1 import BarcodeReaderV1 -from mindee.v1.product.barcode_reader.barcode_reader_v1_document import ( - BarcodeReaderV1Document, -) - -__all__ = [ - "BarcodeReaderV1", - "BarcodeReaderV1Document", -] diff --git a/mindee/v1/product/barcode_reader/barcode_reader_v1.py b/mindee/v1/product/barcode_reader/barcode_reader_v1.py deleted file mode 100644 index 6e8f4836..00000000 --- a/mindee/v1/product/barcode_reader/barcode_reader_v1.py +++ /dev/null @@ -1,37 +0,0 @@ -from mindee.parsing.common.string_dict import StringDict -from mindee.v1.parsing.common.inference import Inference -from mindee.v1.parsing.common.page import Page -from mindee.v1.product.barcode_reader.barcode_reader_v1_document import ( - BarcodeReaderV1Document, -) - - -class BarcodeReaderV1(Inference): - """Barcode Reader API version 1 inference prediction.""" - - prediction: BarcodeReaderV1Document - """Document-level prediction.""" - pages: list[Page[BarcodeReaderV1Document]] - """Page-level prediction(s).""" - endpoint_name = "barcode_reader" - """Name of the endpoint.""" - endpoint_version = "1" - """Version of the endpoint.""" - - def __init__(self, raw_prediction: StringDict): - """ - Barcode Reader v1 inference. - - :param raw_prediction: Raw prediction from the HTTP response. - """ - super().__init__(raw_prediction) - - self.prediction = BarcodeReaderV1Document(raw_prediction["prediction"]) - self.pages = [] - for page in raw_prediction["pages"]: - try: - page_prediction = page["prediction"] - except KeyError: - continue - if page_prediction: - self.pages.append(Page(BarcodeReaderV1Document, page)) diff --git a/mindee/v1/product/barcode_reader/barcode_reader_v1_document.py b/mindee/v1/product/barcode_reader/barcode_reader_v1_document.py deleted file mode 100644 index 986e93be..00000000 --- a/mindee/v1/product/barcode_reader/barcode_reader_v1_document.py +++ /dev/null @@ -1,45 +0,0 @@ -from mindee.parsing.common.string_dict import StringDict -from mindee.parsing.common.summary_helper import clean_out_string -from mindee.v1.parsing.common.prediction import Prediction -from mindee.v1.parsing.standard.text import StringField - - -class BarcodeReaderV1Document(Prediction): - """Barcode Reader API version 1.0 document data.""" - - codes_1d: list[StringField] - """List of decoded 1D barcodes.""" - codes_2d: list[StringField] - """List of decoded 2D barcodes.""" - - def __init__( - self, - raw_prediction: StringDict, - page_id: int | None = None, - ): - """ - Barcode Reader document. - - :param raw_prediction: Raw prediction from HTTP response - :param page_id: Page number for multi pages pdf input - """ - super().__init__(raw_prediction, page_id) - self.codes_1d = [ - StringField(prediction, page_id=page_id) - for prediction in raw_prediction["codes_1d"] - ] - self.codes_2d = [ - StringField(prediction, page_id=page_id) - for prediction in raw_prediction["codes_2d"] - ] - - def __str__(self) -> str: - codes_1d = f"\n {' ' * 13}".join( - [str(item) for item in self.codes_1d], - ) - codes_2d = f"\n {' ' * 13}".join( - [str(item) for item in self.codes_2d], - ) - out_str: str = f":Barcodes 1D: {codes_1d}\n" - out_str += f":Barcodes 2D: {codes_2d}\n" - return clean_out_string(out_str) diff --git a/mindee/v1/product/us/__init__.py b/mindee/v1/product/us/__init__.py deleted file mode 100644 index b7293ccc..00000000 --- a/mindee/v1/product/us/__init__.py +++ /dev/null @@ -1,13 +0,0 @@ -from mindee.v1.product.us.bank_check.bank_check_v1 import BankCheckV1 -from mindee.v1.product.us.bank_check.bank_check_v1_document import ( - BankCheckV1Document, -) -from mindee.v1.product.us.bank_check.bank_check_v1_page import ( - BankCheckV1Page, -) - -__all__ = [ - "BankCheckV1", - "BankCheckV1Document", - "BankCheckV1Page", -] diff --git a/mindee/v1/product/us/bank_check/__init__.py b/mindee/v1/product/us/bank_check/__init__.py deleted file mode 100644 index b7293ccc..00000000 --- a/mindee/v1/product/us/bank_check/__init__.py +++ /dev/null @@ -1,13 +0,0 @@ -from mindee.v1.product.us.bank_check.bank_check_v1 import BankCheckV1 -from mindee.v1.product.us.bank_check.bank_check_v1_document import ( - BankCheckV1Document, -) -from mindee.v1.product.us.bank_check.bank_check_v1_page import ( - BankCheckV1Page, -) - -__all__ = [ - "BankCheckV1", - "BankCheckV1Document", - "BankCheckV1Page", -] diff --git a/mindee/v1/product/us/bank_check/bank_check_v1.py b/mindee/v1/product/us/bank_check/bank_check_v1.py deleted file mode 100644 index e1ae082f..00000000 --- a/mindee/v1/product/us/bank_check/bank_check_v1.py +++ /dev/null @@ -1,40 +0,0 @@ -from mindee.parsing.common.string_dict import StringDict -from mindee.v1.parsing.common.inference import Inference -from mindee.v1.parsing.common.page import Page -from mindee.v1.product.us.bank_check.bank_check_v1_document import ( - BankCheckV1Document, -) -from mindee.v1.product.us.bank_check.bank_check_v1_page import ( - BankCheckV1Page, -) - - -class BankCheckV1(Inference): - """Bank Check API version 1 inference prediction.""" - - prediction: BankCheckV1Document - """Document-level prediction.""" - pages: list[Page[BankCheckV1Page]] - """Page-level prediction(s).""" - endpoint_name = "bank_check" - """Name of the endpoint.""" - endpoint_version = "1" - """Version of the endpoint.""" - - def __init__(self, raw_prediction: StringDict): - """ - Bank Check v1 inference. - - :param raw_prediction: Raw prediction from the HTTP response. - """ - super().__init__(raw_prediction) - - self.prediction = BankCheckV1Document(raw_prediction["prediction"]) - self.pages = [] - for page in raw_prediction["pages"]: - try: - page_prediction = page["prediction"] - except KeyError: - continue - if page_prediction: - self.pages.append(Page(BankCheckV1Page, page)) diff --git a/mindee/v1/product/us/bank_check/bank_check_v1_document.py b/mindee/v1/product/us/bank_check/bank_check_v1_document.py deleted file mode 100644 index 0846bc9f..00000000 --- a/mindee/v1/product/us/bank_check/bank_check_v1_document.py +++ /dev/null @@ -1,72 +0,0 @@ -from mindee.parsing.common.string_dict import StringDict -from mindee.parsing.common.summary_helper import clean_out_string -from mindee.v1.parsing.common.prediction import Prediction -from mindee.v1.parsing.standard.amount import AmountField -from mindee.v1.parsing.standard.date import DateField -from mindee.v1.parsing.standard.text import StringField - - -class BankCheckV1Document(Prediction): - """Bank Check API version 1.1 document data.""" - - account_number: StringField - """The check payer's account number.""" - amount: AmountField - """The amount of the check.""" - check_number: StringField - """The issuer's check number.""" - date: DateField - """The date the check was issued.""" - payees: list[StringField] - """List of the check's payees (recipients).""" - routing_number: StringField - """The check issuer's routing number.""" - - def __init__( - self, - raw_prediction: StringDict, - page_id: int | None = None, - ): - """ - Bank Check document. - - :param raw_prediction: Raw prediction from HTTP response - :param page_id: Page number for multi pages pdf input - """ - super().__init__(raw_prediction, page_id) - self.account_number = StringField( - raw_prediction["account_number"], - page_id=page_id, - ) - self.amount = AmountField( - raw_prediction["amount"], - page_id=page_id, - ) - self.check_number = StringField( - raw_prediction["check_number"], - page_id=page_id, - ) - self.date = DateField( - raw_prediction["date"], - page_id=page_id, - ) - self.payees = [ - StringField(prediction, page_id=page_id) - for prediction in raw_prediction["payees"] - ] - self.routing_number = StringField( - raw_prediction["routing_number"], - page_id=page_id, - ) - - def __str__(self) -> str: - payees = f"\n {' ' * 8}".join( - [str(item) for item in self.payees], - ) - out_str: str = f":Check Issue Date: {self.date}\n" - out_str += f":Amount: {self.amount}\n" - out_str += f":Payees: {payees}\n" - out_str += f":Routing Number: {self.routing_number}\n" - out_str += f":Account Number: {self.account_number}\n" - out_str += f":Check Number: {self.check_number}\n" - return clean_out_string(out_str) diff --git a/mindee/v1/product/us/bank_check/bank_check_v1_page.py b/mindee/v1/product/us/bank_check/bank_check_v1_page.py deleted file mode 100644 index 1c9f1da7..00000000 --- a/mindee/v1/product/us/bank_check/bank_check_v1_page.py +++ /dev/null @@ -1,45 +0,0 @@ -from mindee.parsing.common.string_dict import StringDict -from mindee.parsing.common.summary_helper import clean_out_string -from mindee.v1.parsing.standard.position import PositionField -from mindee.v1.product.us.bank_check.bank_check_v1_document import ( - BankCheckV1Document, -) - - -class BankCheckV1Page(BankCheckV1Document): - """Bank Check API version 1.1 page data.""" - - check_position: PositionField - """The position of the check on the document.""" - signatures_positions: list[PositionField] - """List of signature positions""" - - def __init__( - self, - raw_prediction: StringDict, - page_id: int | None = None, - ): - """ - Bank Check page. - - :param raw_prediction: Raw prediction from HTTP response - :param page_id: Page number for multi pages pdf input - """ - super().__init__(raw_prediction=raw_prediction, page_id=page_id) - self.check_position = PositionField( - raw_prediction["check_position"], - page_id=page_id, - ) - self.signatures_positions = [ - PositionField(prediction, page_id=page_id) - for prediction in raw_prediction["signatures_positions"] - ] - - def __str__(self) -> str: - signatures_positions = f"\n {' ' * 21}".join( - [str(item) for item in self.signatures_positions], - ) - out_str: str = f":Check Position: {self.check_position}\n" - out_str += f":Signature Positions: {signatures_positions}\n" - out_str += f"{super().__str__()}" - return clean_out_string(out_str) diff --git a/tests/data b/tests/data index 8b8423d2..bf5893c5 160000 --- a/tests/data +++ b/tests/data @@ -1 +1 @@ -Subproject commit 8b8423d239a360f7a8ac72d77e53fb644a76e345 +Subproject commit bf5893c5c631f37f01419b4a9c71c8a5ce036939 diff --git a/tests/v1/extraction/test_image_extractor.py b/tests/v1/extraction/test_image_extractor.py deleted file mode 100644 index 104d6adc..00000000 --- a/tests/v1/extraction/test_image_extractor.py +++ /dev/null @@ -1,46 +0,0 @@ -from __future__ import annotations - -import json - -import pytest - -from mindee.image.image_extractor import extract_multiple_images_from_source -from mindee.input.path_input import PathInput -from mindee.v1.product.barcode_reader import BarcodeReaderV1 -from tests.utils import V1_PRODUCT_PATH - -Image = pytest.importorskip("PIL.Image") - - -@pytest.fixture -def barcode_path(): - return V1_PRODUCT_PATH / "barcode_reader" / "default_sample.jpg" - - -@pytest.fixture -def barcode_json_path(): - return V1_PRODUCT_PATH / "barcode_reader" / "response_v1" / "complete.json" - - -def test_barcode_image_extraction(barcode_path, barcode_json_path): - with open(barcode_json_path, "rb") as f: - response = json.load(f) - inference = BarcodeReaderV1(response["document"]["inference"]) - barcodes_1 = [code_1d.polygon for code_1d in inference.prediction.codes_1d] - barcodes_2 = [code_2d.polygon for code_2d in inference.prediction.codes_2d] - input_source = PathInput(barcode_path) - extracted_barcodes_1d = extract_multiple_images_from_source( - input_source, 0, barcodes_1 - ) - extracted_barcodes_2d = extract_multiple_images_from_source( - input_source, 0, barcodes_2 - ) - assert len(extracted_barcodes_1d) == 1 - assert len(extracted_barcodes_2d) == 2 - - assert extracted_barcodes_1d[0].as_input_source().filename.endswith("jpg") - assert Image.open(extracted_barcodes_1d[0].buffer).size == (353, 200) - assert Image.open(extracted_barcodes_2d[0].buffer).size == (214, 216) - assert extracted_barcodes_2d[0].as_input_source().filename.endswith("jpg") - assert extracted_barcodes_2d[1].as_input_source().filename.endswith("jpg") - assert Image.open(extracted_barcodes_2d[1].buffer).size == (193, 201) diff --git a/tests/v1/product/barcode_reader/__init__.py b/tests/v1/product/barcode_reader/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/tests/v1/product/barcode_reader/test_barcode_reader_v1.py b/tests/v1/product/barcode_reader/test_barcode_reader_v1.py deleted file mode 100644 index 3af7cfa3..00000000 --- a/tests/v1/product/barcode_reader/test_barcode_reader_v1.py +++ /dev/null @@ -1,47 +0,0 @@ -import json - -import pytest - -from mindee.v1.parsing.common import Document -from mindee.v1.parsing.common.page import Page -from mindee.v1.product.barcode_reader import BarcodeReaderV1 -from mindee.v1.product.barcode_reader.barcode_reader_v1_document import ( - BarcodeReaderV1Document, -) -from tests.utils import V1_PRODUCT_PATH - -RESPONSE_DIR = V1_PRODUCT_PATH / "barcode_reader" / "response_v1" - -BarcodeReaderV1DocumentType = Document[ - BarcodeReaderV1Document, - Page[BarcodeReaderV1Document], -] - - -@pytest.fixture -def complete_doc() -> BarcodeReaderV1DocumentType: - file_path = RESPONSE_DIR / "complete.json" - with open(file_path, encoding="utf-8") as open_file: - json_data = json.load(open_file) - return Document(BarcodeReaderV1, json_data["document"]) - - -@pytest.fixture -def empty_doc() -> BarcodeReaderV1DocumentType: - file_path = RESPONSE_DIR / "empty.json" - with open(file_path, encoding="utf-8") as open_file: - json_data = json.load(open_file) - return Document(BarcodeReaderV1, json_data["document"]) - - -def test_complete_doc(complete_doc: BarcodeReaderV1DocumentType): - file_path = RESPONSE_DIR / "summary_full.rst" - with open(file_path, encoding="utf-8") as open_file: - reference_str = open_file.read() - assert str(complete_doc) == reference_str - - -def test_empty_doc(empty_doc: BarcodeReaderV1DocumentType): - prediction = empty_doc.inference.prediction - assert len(prediction.codes_1d) == 0 - assert len(prediction.codes_2d) == 0 diff --git a/tests/v1/product/us/__init__.py b/tests/v1/product/us/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/tests/v1/product/us/bank_check/__init__.py b/tests/v1/product/us/bank_check/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/tests/v1/product/us/bank_check/test_bank_check_v1.py b/tests/v1/product/us/bank_check/test_bank_check_v1.py deleted file mode 100644 index 7147ccbe..00000000 --- a/tests/v1/product/us/bank_check/test_bank_check_v1.py +++ /dev/null @@ -1,71 +0,0 @@ -import json - -import pytest - -from mindee.v1.parsing.common import Document -from mindee.v1.parsing.common.page import Page -from mindee.v1.product.us.bank_check import ( - BankCheckV1Document, -) -from mindee.v1.product.us.bank_check.bank_check_v1 import BankCheckV1 -from mindee.v1.product.us.bank_check.bank_check_v1_page import ( - BankCheckV1Page, -) -from tests.utils import V1_PRODUCT_PATH - -RESPONSE_DIR = V1_PRODUCT_PATH / "bank_check" / "response_v1" - -BankCheckV1DocumentType = Document[ - BankCheckV1Document, - Page[BankCheckV1Page], -] - - -@pytest.fixture -def complete_doc() -> BankCheckV1DocumentType: - file_path = RESPONSE_DIR / "complete.json" - with open(file_path, encoding="utf-8") as open_file: - json_data = json.load(open_file) - return Document(BankCheckV1, json_data["document"]) - - -@pytest.fixture -def empty_doc() -> BankCheckV1DocumentType: - file_path = RESPONSE_DIR / "empty.json" - with open(file_path, encoding="utf-8") as open_file: - json_data = json.load(open_file) - return Document(BankCheckV1, json_data["document"]) - - -@pytest.fixture -def complete_page0() -> Page[BankCheckV1Page]: - file_path = RESPONSE_DIR / "complete.json" - with open(file_path, encoding="utf-8") as open_file: - json_data = json.load(open_file) - page0 = json_data["document"]["inference"]["pages"][0] - return Page(BankCheckV1Page, page0) - - -def test_complete_doc(complete_doc: BankCheckV1DocumentType): - file_path = RESPONSE_DIR / "summary_full.rst" - with open(file_path, encoding="utf-8") as open_file: - reference_str = open_file.read() - assert str(complete_doc) == reference_str - - -def test_empty_doc(empty_doc: BankCheckV1DocumentType): - prediction = empty_doc.inference.prediction - assert prediction.date.value is None - assert prediction.amount.value is None - assert len(prediction.payees) == 0 - assert prediction.routing_number.value is None - assert prediction.account_number.value is None - assert prediction.check_number.value is None - - -def test_complete_page0(complete_page0: Page[BankCheckV1Page]): - file_path = RESPONSE_DIR / "summary_page0.rst" - with open(file_path, encoding="utf-8") as open_file: - reference_str = open_file.read() - assert complete_page0.id == 0 - assert str(complete_page0) == reference_str diff --git a/tests/v1/test_cli.py b/tests/v1/test_cli.py index 9ac30071..93d80186 100644 --- a/tests/v1/test_cli.py +++ b/tests/v1/test_cli.py @@ -187,18 +187,6 @@ def test_cli_passport(ots_doc): parser.call_parse() -def test_cli_us_bank_check(ots_doc): - ots_doc.product_name = "us-bank-check" - ots_doc.api_key = "" - parser = MindeeParser(parsed_args=ots_doc) - with pytest.raises(RuntimeError): - parser.call_parse() - ots_doc.api_key = "dummy" - parser = MindeeParser(parsed_args=ots_doc) - with pytest.raises(MindeeHTTPError): - parser.call_parse() - - def test_cli_invoice_splitter_enqueue(ots_doc_enqueue_and_parse): ots_doc_enqueue_and_parse.product_name = "invoice-splitter" ots_doc_enqueue_and_parse.api_key = ""