Skip to content

Commit 154834a

Browse files
poryaisfahaniPorya Isfahani
andauthored
add passkey management tests (#103)
Co-authored-by: Porya Isfahani <porya.isfahani@onfido.com>
1 parent a0ed62a commit 154834a

1 file changed

Lines changed: 60 additions & 0 deletions

File tree

tests/test_passkeys.py

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
from onfido import Passkey, PasskeyUpdater, PasskeysList
2+
3+
SAMPLE_USERNAME = "sample-username"
4+
SAMPLE_PASSKEY_ID = "00000000-0000-0000-0000-000000000000"
5+
6+
7+
def test_list_passkeys(onfido_api):
8+
passkeys = onfido_api.list_passkeys(SAMPLE_USERNAME)
9+
10+
assert isinstance(passkeys, PasskeysList)
11+
assert len(passkeys.passkeys) > 0
12+
13+
sample_passkey = next(
14+
(passkey for passkey in passkeys.passkeys if passkey.id == SAMPLE_PASSKEY_ID),
15+
passkeys.passkeys[0],
16+
)
17+
18+
assert isinstance(sample_passkey, Passkey)
19+
assert sample_passkey.application_domain is not None
20+
assert sample_passkey.state is not None
21+
assert sample_passkey.created_at is not None
22+
assert sample_passkey.model_dump_json(by_alias=True, exclude_none=True) is not None
23+
24+
25+
def test_find_passkey(onfido_api):
26+
passkey = onfido_api.find_passkey(SAMPLE_USERNAME, SAMPLE_PASSKEY_ID)
27+
28+
assert isinstance(passkey, Passkey)
29+
assert passkey.id == SAMPLE_PASSKEY_ID
30+
assert passkey.application_domain is not None
31+
assert passkey.state is not None
32+
assert passkey.created_at is not None
33+
assert passkey.model_dump_json(by_alias=True, exclude_none=True) is not None
34+
35+
36+
def test_update_passkey_state(onfido_api):
37+
updated_passkey = onfido_api.update_passkey(
38+
SAMPLE_USERNAME,
39+
SAMPLE_PASSKEY_ID,
40+
PasskeyUpdater(state="INACTIVE"),
41+
)
42+
43+
assert isinstance(updated_passkey, Passkey)
44+
assert updated_passkey.id == SAMPLE_PASSKEY_ID
45+
assert updated_passkey.state == "INACTIVE"
46+
47+
48+
def test_delete_passkey_success(onfido_api):
49+
response = onfido_api.delete_passkey_with_http_info(
50+
SAMPLE_USERNAME,
51+
SAMPLE_PASSKEY_ID,
52+
)
53+
54+
assert response.status_code == 204
55+
56+
57+
def test_delete_passkeys_success(onfido_api):
58+
response = onfido_api.delete_passkeys_with_http_info(SAMPLE_USERNAME)
59+
60+
assert response.status_code == 204

0 commit comments

Comments
 (0)