Skip to content

Commit 1870b52

Browse files
committed
Add token expiry tests
1 parent 4e9e497 commit 1870b52

File tree

1 file changed

+30
-0
lines changed

1 file changed

+30
-0
lines changed

tests/unit/metrics/api/django_cognito_jwt/test_validator.py

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import pytest
2+
from datetime import datetime, timedelta, timezone
23
from utils import create_jwt_token
34

45
from metrics.api.django_cognito_jwt import validator
@@ -31,6 +32,35 @@ def test_validate_token_error_key(cognito_well_known_keys, jwk_private_key_two):
3132
auth.validate(token)
3233

3334

35+
def test_validate_token_valid_expiry(cognito_well_known_keys, jwk_private_key_one):
36+
token = create_jwt_token(
37+
jwk_private_key_one,
38+
{
39+
"iss": "https://cognito-idp.eu-central-1.amazonaws.com/bla",
40+
"aud": "my-audience",
41+
"sub": "username",
42+
"exp": datetime.now(tz=timezone.utc) + timedelta(minutes=15),
43+
},
44+
)
45+
auth = validator.TokenValidator("eu-central-1", "bla", "my-audience")
46+
auth.validate(token)
47+
48+
49+
def test_validate_token_error_expired(cognito_well_known_keys, jwk_private_key_one):
50+
token = create_jwt_token(
51+
jwk_private_key_one,
52+
{
53+
"iss": "https://cognito-idp.eu-central-1.amazonaws.com/bla",
54+
"aud": "my-audience",
55+
"sub": "username",
56+
"exp": datetime.now(tz=timezone.utc) - timedelta(minutes=15),
57+
},
58+
)
59+
auth = validator.TokenValidator("eu-central-1", "bla", "my-audience")
60+
with pytest.raises(validator.TokenError):
61+
auth.validate(token)
62+
63+
3464
def test_validate_token_error_aud(cognito_well_known_keys, jwk_private_key_one):
3565
token = create_jwt_token(
3666
jwk_private_key_one,

0 commit comments

Comments
 (0)