Skip to content

Commit 31e393a

Browse files
committed
add tests for pkce
Closes #27.
1 parent d20a789 commit 31e393a

File tree

1 file changed

+33
-0
lines changed

1 file changed

+33
-0
lines changed

tests/test_pkce.py

+33
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
import pytest
2+
3+
from simple_openid_connect import pkce
4+
5+
6+
def test_get_code_challenge():
7+
PKCE_PAIRS = [
8+
# (verifier, challenge) pairs
9+
(
10+
"X1mcNAU_lfu25acaJoCQSyo4YyZc1NwaxWw7tNL7mffK0AXCS-lNBtisryb2",
11+
"V_nSilRCu0pt3eR-cH7LWru-rYwlTr3J2143tiwloCA",
12+
),
13+
(
14+
"9ok-JCOrX1OkmCFy8wGq2UBTGgFkeEg5IGffzgKNfDrpO-AOJ-83J9IhXOqj",
15+
"ET7UYFBGIHCdYh9bLyeLqWiKEr3t3JCxMRNacq3NCGk",
16+
),
17+
(
18+
"zDv_Uz7QRoYRgIdieHac1UIlDNPPQb8qVIwgLzFu66kHo2g92UfkoU8Vi91z",
19+
"iWLceDSH1e3G7NJ5eieiqpk9IgXPTgSUd8ivdbRZKII",
20+
),
21+
]
22+
for verifier, challenge in PKCE_PAIRS:
23+
assert (
24+
pkce.get_code_challenge(verifier) == challenge
25+
), "get_code_challenge() produced an unexpected challenge"
26+
27+
28+
def test_gen_pair_is_actual_pair():
29+
for _ in range(100):
30+
verifier, challenge = pkce.generate_pkce_pair()
31+
assert challenge == pkce.get_code_challenge(
32+
verifier
33+
), "pkce.generate_pkce_pair() returned a pair whose challenge cannot be reproduced from the verifier"

0 commit comments

Comments
 (0)