Skip to content
Snippets Groups Projects
Select Git revision
  • f33aa837d74fb62257057c4aa055179ebbabecba
  • test default protected
  • master protected
  • original
  • pirati-backup protected
  • beta-2
  • beta-1
  • v3.1.4
  • v3.1.3
  • v3.1.2
  • v3.1.1
  • v3.1.0
  • v3.0.16
  • v3.0.15
  • v3.0.14
  • v3.0.13
  • v3.0.12
  • v3.0.11
  • v3.0.10
  • v3.0.9
  • v3.0.8
  • v3.0.7
  • v3.0.6
  • v3.0.5
  • v3.0.4
25 results

utils.py

Blame
  • test_auth.py 975 B
    from django.conf import settings
    import time
    import jwt
    import pytest
    
    from openlobby.core.auth import create_access_token, parse_access_token
    
    
    def test_create_access_token():
        username = "idkfa"
        token = create_access_token(username)
        payload = jwt.decode(
            token, settings.SECRET_KEY, algorithms=[settings.JWT_ALGORITHM]
        )
        assert isinstance(token, str)
        assert payload["sub"] == username
        expected_expiration = int(time.time() + settings.SESSION_EXPIRATION)
        assert expected_expiration <= payload["exp"] <= expected_expiration + 1
    
    
    def test_parse_access_token():
        username = "iddqd"
        token = create_access_token(username)
        result = parse_access_token(token)
        assert result == username
    
    
    def test_parse_access_token__expired():
        username = "idfa"
        expiration = int(time.time() - 1)
        token = create_access_token(username, expiration)
        with pytest.raises(jwt.ExpiredSignatureError):
            parse_access_token(token)