Skip to content

Commit e37f58d

Browse files
committed
add dummy tests
1 parent f7e4c09 commit e37f58d

2 files changed

Lines changed: 96 additions & 0 deletions

File tree

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
from mindee.parsing.v2.base_inference import BaseInference
2+
from mindee.parsing.v2.base_response import BaseResponse
3+
from mindee.parsing.v2.inference_job import InferenceJob
4+
from mindee.v2.parsing import BaseInference as V2BaseInference
5+
from mindee.v2.parsing import BaseResponse as V2BaseResponse
6+
from mindee.v2.parsing.inference import BaseInference as V2InferenceBaseInference
7+
from mindee.v2.parsing.inference import BaseResponse as V2InferenceBaseResponse
8+
from mindee.v2.parsing.inference.base_inference import (
9+
BaseInference as V2BaseInferenceModule,
10+
)
11+
from mindee.v2.parsing.inference.base_response import (
12+
BaseResponse as V2BaseResponseModule,
13+
)
14+
from mindee.v2.parsing.inference.inference_job import InferenceJob as V2InferenceJob
15+
16+
17+
def test_v2_parsing_compatibility_imports():
18+
assert V2BaseInference is BaseInference
19+
assert V2BaseResponse is BaseResponse
20+
assert V2InferenceBaseInference is BaseInference
21+
assert V2InferenceBaseResponse is BaseResponse
22+
assert V2BaseInferenceModule is BaseInference
23+
assert V2BaseResponseModule is BaseResponse
24+
assert V2InferenceJob is InferenceJob
Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
import pytest
2+
3+
from mindee.error import MindeeApiV2Error
4+
from mindee.parsing.v2.field.dynamic_field import (
5+
DynamicField,
6+
FieldType,
7+
get_field_type,
8+
)
9+
from mindee.parsing.v2.field.field_confidence import FieldConfidence
10+
from mindee.parsing.v2.field.inference_fields import InferenceFields
11+
from mindee.parsing.v2.field.list_field import ListField
12+
from mindee.parsing.v2.field.object_field import ObjectField
13+
from mindee.parsing.v2.field.simple_field import SimpleField
14+
15+
16+
def test_dynamic_field_multi_str():
17+
field = DynamicField(FieldType.SIMPLE)
18+
19+
assert field.multi_str() == str(field)
20+
21+
22+
def test_invalid_field_confidence_is_ignored():
23+
field = SimpleField({"value": "invoice", "confidence": "Unknown"})
24+
25+
assert field.confidence is None
26+
27+
28+
def test_field_confidence_comparisons_and_type_errors():
29+
assert int(FieldConfidence.CERTAIN) == 4
30+
assert str(FieldConfidence.HIGH) == "High"
31+
assert FieldConfidence.LOW < FieldConfidence.MEDIUM
32+
assert FieldConfidence.MEDIUM <= FieldConfidence.HIGH
33+
assert FieldConfidence.CERTAIN > FieldConfidence.HIGH
34+
assert FieldConfidence.HIGH >= FieldConfidence.MEDIUM
35+
36+
with pytest.raises(TypeError, match="Cannot compare FieldConfidence"):
37+
FieldConfidence.HIGH < "High"
38+
with pytest.raises(TypeError, match="Cannot compare FieldConfidence"):
39+
FieldConfidence.HIGH <= "High"
40+
with pytest.raises(TypeError, match="Cannot compare FieldConfidence"):
41+
FieldConfidence.HIGH > "High"
42+
with pytest.raises(TypeError, match="Cannot compare FieldConfidence"):
43+
FieldConfidence.HIGH >= "High"
44+
45+
46+
def test_get_field_type_rejects_unknown_payloads():
47+
with pytest.raises(MindeeApiV2Error, match="Unrecognized field type"):
48+
get_field_type({"confidence": "High"})
49+
50+
with pytest.raises(MindeeApiV2Error, match="Unrecognized field format"):
51+
get_field_type("invoice")
52+
53+
54+
def test_inference_fields_attribute_access_and_string():
55+
fields = InferenceFields(
56+
{
57+
"name": {"value": "Jane Doe"},
58+
"line_items": {"items": [{"value": "Item 1"}]},
59+
"address": {"fields": {"city": {"value": "Paris"}}},
60+
}
61+
)
62+
63+
assert isinstance(fields.name, SimpleField)
64+
assert fields.name.value == "Jane Doe"
65+
assert isinstance(fields.line_items, ListField)
66+
assert isinstance(fields.address, ObjectField)
67+
assert ":name: Jane Doe" in str(fields)
68+
assert ":line_items:" in str(fields)
69+
assert ":address:" in str(fields)
70+
71+
with pytest.raises(AttributeError, match="missing"):
72+
fields.missing

0 commit comments

Comments
 (0)