Skip to content

Commit 4de25b2

Browse files
committed
refactor and add tests
1 parent 036488d commit 4de25b2

10 files changed

Lines changed: 1004 additions & 121 deletions
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import responses
22

3-
from veryfi import *
3+
from veryfi import Client
44

55

66
@responses.activate

tests/_documents/test_tags.py

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
import responses
2+
3+
from veryfi import Client
4+
5+
6+
@responses.activate
7+
def test_tags():
8+
mock_doc_id = 169985445
9+
mock_resp = {"id": 6673474, "name": "tag_123"}
10+
client = Client(client_id="v", client_secret="w", username="o", api_key="c")
11+
responses.put(
12+
f"{client.versioned_url}/partner/documents/{mock_doc_id}/tags/",
13+
json=mock_resp,
14+
status=200,
15+
)
16+
d = client.add_tag(mock_doc_id, "tag_123")
17+
assert d == mock_resp
18+
19+
20+
@responses.activate
21+
def test_replace_multiple_tags():
22+
mock_doc_id = 169985445
23+
mock_resp = {"id": 6673474, "tags": ["tag_1", "tag_2", "tag_3"]}
24+
client = Client(client_id="v", client_secret="w", username="o", api_key="c")
25+
responses.put(
26+
f"{client.versioned_url}/partner/documents/{mock_doc_id}/",
27+
json=mock_resp,
28+
status=200,
29+
)
30+
d = client.replace_tags(mock_doc_id, ["tag_1", "tag_2", "tag_3"])
31+
assert d == mock_resp
32+
33+
34+
@responses.activate
35+
def test_add_multiple_tags():
36+
mock_doc_id = 169985445
37+
mock_resp = {"id": 6673474, "tags": ["tag_1", "tag_2", "tag_3"]}
38+
client = Client(client_id="v", client_secret="w", username="o", api_key="c")
39+
responses.post(
40+
f"{client.versioned_url}/partner/documents/{mock_doc_id}/tags/",
41+
json=mock_resp,
42+
status=200,
43+
)
44+
d = client.add_tags(mock_doc_id, ["tag_1", "tag_2", "tag_3"])
45+
assert d == mock_resp

tests/test_a_docs.py

Lines changed: 126 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,126 @@
1+
import pytest
2+
import responses
3+
4+
from veryfi import Client
5+
6+
7+
@responses.activate
8+
def test_process_a_doc():
9+
mock = {
10+
"pdf_url": "https://scdn.veryfi.com/other-documents/919ba4778c039560/cf1363b8-a38f-47e8-b9ee-8105342121cd/7179c430-eb38-4251-b015-9ceb20129371.pdf?Expires=1727203608&Signature=ZSfZmJRLtJ6DeIRioIQSExufnR4fDvADq1Fs-x~WnbU1JueQ1PLtY~7b~Krk7eda6EAQkMBa2wamDDcE2lCvrutHCS3jUbhlFFhSuQd1XljbYjBlWOdxYyXpYMmluDlaWlkgm41vA92UD3LSsBPBLrBasotjqNYLGnTg87guXTtUG1rSWlK2FhHxzborReNdrpXUcDMs4-kkQ46tTDgFH~mCPkh5F9DSpm-UsyJ6SmJgm1SWfw09KbQizyp4lIwte1yumKXtORtTCKv5WFWRUFUWD6Kv1eIkh5XJ5jfMzSfaTEikZlYF4t08Lbp5Apk5-alOW-1yYIwqb5RqZhQ26w__&Key-Pair-Id=APKAJCILBXEJFZF4DCHQ",
11+
"id": 4559535,
12+
"external_id": None,
13+
"created_date": "2024-09-24 18:31:48",
14+
"updated_date": "2024-09-24 18:31:48",
15+
"img_thumbnail_url": "https://scdn.veryfi.com/other-documents/919ba4778c039560/cf1363b8-a38f-47e8-b9ee-8105342121cd/thumbnail.png?Expires=1727203608&Signature=SIRru1E-r1VT5KmufOC9A3UXlWzpgaZWUn0GhSj~veGagGAISV7sztEA7bER~kZlVnowRBSu19UaR8VeGfQ39uzUxEVlzdxPgjITt7IEgfGa~B-0EUI8izLDfRoOMkdRrOknLJKpCq87hz8fMn6wfKSgWxGgyCFKuvO2zcdla~fmtcTOrR4OMAPA3TX4Y4ZRnwCfUDQwNMw72Zihh9bxulzgjM6Cqffc7wta6wC84rYRlztPgGQj51ARcewG5s-IouvrJKoTAONLJZaq8CEc-iMh~TRzKf4MiI5HoheBFmjKb2NdoJFDpHR~~aLW8RxWkEV87JtglILAumkjrY7jjw__&Key-Pair-Id=APKAJCILBXEJFZF4DCHQ",
16+
"blueprint_name": "us_driver_license",
17+
"template_name": "us_driver_license",
18+
"address": "892 MOMONA ST HONOLULU, HI 96820",
19+
"birth_date": "1981-06-03",
20+
"expiration_date": "2008-06-03",
21+
"eyes_color": "BRO",
22+
"first_name": None,
23+
"height": "5-10",
24+
"issue_date": "1998-06-18",
25+
"last_name": "McLovin",
26+
"license_class": "3",
27+
"license_number": "01-47-87441",
28+
"sex": "M",
29+
"state": "HAWAII",
30+
"weight": "150",
31+
}
32+
client = Client(client_id="v", client_secret="w", username="o", api_key="c")
33+
responses.add(
34+
responses.POST,
35+
f"{client.versioned_url}/partner/any-documents/",
36+
json=mock,
37+
status=200,
38+
)
39+
d = client.process_any_document(
40+
blueprint_name="us_driver_license",
41+
file_path="tests/assets/receipt_public.jpg",
42+
delete_after_processing=True,
43+
boost_mode=True,
44+
)
45+
assert d == mock
46+
47+
48+
@responses.activate
49+
def test_process_document_url():
50+
mock = {
51+
"pdf_url": "https://scdn.veryfi.com/other-documents/919ba4778c039560/cf1363b8-a38f-47e8-b9ee-8105342121cd/7179c430-eb38-4251-b015-9ceb20129371.pdf?Expires=1727203608&Signature=ZSfZmJRLtJ6DeIRioIQSExufnR4fDvADq1Fs-x~WnbU1JueQ1PLtY~7b~Krk7eda6EAQkMBa2wamDDcE2lCvrutHCS3jUbhlFFhSuQd1XljbYjBlWOdxYyXpYMmluDlaWlkgm41vA92UD3LSsBPBLrBasotjqNYLGnTg87guXTtUG1rSWlK2FhHxzborReNdrpXUcDMs4-kkQ46tTDgFH~mCPkh5F9DSpm-UsyJ6SmJgm1SWfw09KbQizyp4lIwte1yumKXtORtTCKv5WFWRUFUWD6Kv1eIkh5XJ5jfMzSfaTEikZlYF4t08Lbp5Apk5-alOW-1yYIwqb5RqZhQ26w__&Key-Pair-Id=APKAJCILBXEJFZF4DCHQ",
52+
"id": 4559535,
53+
"external_id": None,
54+
"created_date": "2024-09-24 18:31:48",
55+
"updated_date": "2024-09-24 18:31:48",
56+
"img_thumbnail_url": "https://scdn.veryfi.com/other-documents/919ba4778c039560/cf1363b8-a38f-47e8-b9ee-8105342121cd/thumbnail.png?Expires=1727203608&Signature=SIRru1E-r1VT5KmufOC9A3UXlWzpgaZWUn0GhSj~veGagGAISV7sztEA7bER~kZlVnowRBSu19UaR8VeGfQ39uzUxEVlzdxPgjITt7IEgfGa~B-0EUI8izLDfRoOMkdRrOknLJKpCq87hz8fMn6wfKSgWxGgyCFKuvO2zcdla~fmtcTOrR4OMAPA3TX4Y4ZRnwCfUDQwNMw72Zihh9bxulzgjM6Cqffc7wta6wC84rYRlztPgGQj51ARcewG5s-IouvrJKoTAONLJZaq8CEc-iMh~TRzKf4MiI5HoheBFmjKb2NdoJFDpHR~~aLW8RxWkEV87JtglILAumkjrY7jjw__&Key-Pair-Id=APKAJCILBXEJFZF4DCHQ",
57+
"blueprint_name": "us_driver_license",
58+
"template_name": "us_driver_license",
59+
"address": "892 MOMONA ST HONOLULU, HI 96820",
60+
"birth_date": "1981-06-03",
61+
"expiration_date": "2008-06-03",
62+
"eyes_color": "BRO",
63+
"first_name": None,
64+
"height": "5-10",
65+
"issue_date": "1998-06-18",
66+
"last_name": "McLovin",
67+
"license_class": "3",
68+
"license_number": "01-47-87441",
69+
"sex": "M",
70+
"state": "HAWAII",
71+
"weight": "150",
72+
}
73+
74+
client = Client(client_id="v", client_secret="w", username="o", api_key="c")
75+
responses.add(
76+
responses.POST,
77+
f"{client.versioned_url}/partner/any-documents/",
78+
json=mock,
79+
status=200,
80+
)
81+
d = client.process_any_document_url(
82+
blueprint_name="us_driver_license",
83+
file_url="http://cdn-dev.veryfi.com/testing/veryfi-python/receipt_public.jpg",
84+
delete_after_processing=True,
85+
max_pages_to_process=1,
86+
boost_mode=True,
87+
)
88+
assert d == mock
89+
90+
91+
@responses.activate
92+
def test_get_documents():
93+
mock = [
94+
{
95+
"pdf_url": "https://scdn.veryfi.com/other-documents/919ba4778c039560/cf1363b8-a38f-47e8-b9ee-8105342121cd/7179c430-eb38-4251-b015-9ceb20129371.pdf?Expires=1727203608&Signature=ZSfZmJRLtJ6DeIRioIQSExufnR4fDvADq1Fs-x~WnbU1JueQ1PLtY~7b~Krk7eda6EAQkMBa2wamDDcE2lCvrutHCS3jUbhlFFhSuQd1XljbYjBlWOdxYyXpYMmluDlaWlkgm41vA92UD3LSsBPBLrBasotjqNYLGnTg87guXTtUG1rSWlK2FhHxzborReNdrpXUcDMs4-kkQ46tTDgFH~mCPkh5F9DSpm-UsyJ6SmJgm1SWfw09KbQizyp4lIwte1yumKXtORtTCKv5WFWRUFUWD6Kv1eIkh5XJ5jfMzSfaTEikZlYF4t08Lbp5Apk5-alOW-1yYIwqb5RqZhQ26w__&Key-Pair-Id=APKAJCILBXEJFZF4DCHQ",
96+
"id": 4559535,
97+
"external_id": None,
98+
"created_date": "2024-09-24 18:31:48",
99+
"updated_date": "2024-09-24 18:31:48",
100+
"img_thumbnail_url": "https://scdn.veryfi.com/other-documents/919ba4778c039560/cf1363b8-a38f-47e8-b9ee-8105342121cd/thumbnail.png?Expires=1727203608&Signature=SIRru1E-r1VT5KmufOC9A3UXlWzpgaZWUn0GhSj~veGagGAISV7sztEA7bER~kZlVnowRBSu19UaR8VeGfQ39uzUxEVlzdxPgjITt7IEgfGa~B-0EUI8izLDfRoOMkdRrOknLJKpCq87hz8fMn6wfKSgWxGgyCFKuvO2zcdla~fmtcTOrR4OMAPA3TX4Y4ZRnwCfUDQwNMw72Zihh9bxulzgjM6Cqffc7wta6wC84rYRlztPgGQj51ARcewG5s-IouvrJKoTAONLJZaq8CEc-iMh~TRzKf4MiI5HoheBFmjKb2NdoJFDpHR~~aLW8RxWkEV87JtglILAumkjrY7jjw__&Key-Pair-Id=APKAJCILBXEJFZF4DCHQ",
101+
"blueprint_name": "us_driver_license",
102+
"template_name": "us_driver_license",
103+
"address": "892 MOMONA ST HONOLULU, HI 96820",
104+
"birth_date": "1981-06-03",
105+
"expiration_date": "2008-06-03",
106+
"eyes_color": "BRO",
107+
"first_name": None,
108+
"height": "5-10",
109+
"issue_date": "1998-06-18",
110+
"last_name": "McLovin",
111+
"license_class": "3",
112+
"license_number": "01-47-87441",
113+
"sex": "M",
114+
"state": "HAWAII",
115+
"weight": "150",
116+
}
117+
]
118+
client = Client(client_id="v", client_secret="w", username="o", api_key="c")
119+
responses.add(
120+
responses.GET,
121+
f"{client.versioned_url}/partner/any-documents/",
122+
json=mock,
123+
status=200,
124+
)
125+
d = client.get_any_documents()
126+
assert d == mock

0 commit comments

Comments
 (0)