Refactor tests for improved consistency and readability
- Updated test cases in `test_auth_endpoints.py` to ensure consistent formatting and style. - Enhanced `test_socket_endpoints.py` with consistent parameter formatting and improved readability. - Cleaned up `conftest.py` by ensuring consistent parameter formatting in fixtures. - Added comprehensive tests for API token dependencies in `test_api_token_dependencies.py`. - Refactored `test_auth_service.py` to maintain consistent parameter formatting. - Cleaned up `test_oauth_service.py` by removing unnecessary imports. - Improved `test_socket_service.py` with consistent formatting and readability. - Enhanced `test_cookies.py` by ensuring consistent formatting and readability. - Introduced new tests for token utilities in `test_token_utils.py` to validate token generation and expiration logic.
This commit is contained in:
@@ -1,8 +1,7 @@
|
||||
"""Tests for cookie utilities."""
|
||||
|
||||
import pytest
|
||||
|
||||
from app.utils.cookies import parse_cookies, extract_access_token_from_cookies
|
||||
from app.utils.cookies import extract_access_token_from_cookies, parse_cookies
|
||||
|
||||
|
||||
class TestParseCookies:
|
||||
@@ -22,18 +21,18 @@ class TestParseCookies:
|
||||
"""Test parsing single cookie."""
|
||||
cookie_header = "session_id=abc123"
|
||||
result = parse_cookies(cookie_header)
|
||||
|
||||
|
||||
assert result == {"session_id": "abc123"}
|
||||
|
||||
def test_parse_multiple_cookies(self):
|
||||
"""Test parsing multiple cookies."""
|
||||
cookie_header = "session_id=abc123; user_pref=dark_mode; lang=en"
|
||||
result = parse_cookies(cookie_header)
|
||||
|
||||
|
||||
expected = {
|
||||
"session_id": "abc123",
|
||||
"user_pref": "dark_mode",
|
||||
"lang": "en"
|
||||
"lang": "en",
|
||||
}
|
||||
assert result == expected
|
||||
|
||||
@@ -41,10 +40,10 @@ class TestParseCookies:
|
||||
"""Test parsing cookies with extra spaces."""
|
||||
cookie_header = " session_id = abc123 ; user_pref = dark_mode "
|
||||
result = parse_cookies(cookie_header)
|
||||
|
||||
|
||||
expected = {
|
||||
"session_id": "abc123",
|
||||
"user_pref": "dark_mode"
|
||||
"user_pref": "dark_mode",
|
||||
}
|
||||
assert result == expected
|
||||
|
||||
@@ -52,10 +51,10 @@ class TestParseCookies:
|
||||
"""Test parsing cookies where value contains equals sign."""
|
||||
cookie_header = "encoded_data=key=value&other=data; session=123"
|
||||
result = parse_cookies(cookie_header)
|
||||
|
||||
|
||||
expected = {
|
||||
"encoded_data": "key=value&other=data",
|
||||
"session": "123"
|
||||
"session": "123",
|
||||
}
|
||||
assert result == expected
|
||||
|
||||
@@ -63,11 +62,11 @@ class TestParseCookies:
|
||||
"""Test parsing malformed cookies (no equals sign)."""
|
||||
cookie_header = "session_id=abc123; malformed_cookie; user_pref=dark"
|
||||
result = parse_cookies(cookie_header)
|
||||
|
||||
|
||||
# Should skip malformed cookie and parse valid ones
|
||||
expected = {
|
||||
"session_id": "abc123",
|
||||
"user_pref": "dark"
|
||||
"user_pref": "dark",
|
||||
}
|
||||
assert result == expected
|
||||
|
||||
@@ -75,10 +74,10 @@ class TestParseCookies:
|
||||
"""Test parsing cookies with empty values."""
|
||||
cookie_header = "empty_value=; session_id=abc123"
|
||||
result = parse_cookies(cookie_header)
|
||||
|
||||
|
||||
expected = {
|
||||
"empty_value": "",
|
||||
"session_id": "abc123"
|
||||
"session_id": "abc123",
|
||||
}
|
||||
assert result == expected
|
||||
|
||||
@@ -86,7 +85,7 @@ class TestParseCookies:
|
||||
"""Test parsing cookies with duplicate names (last one wins)."""
|
||||
cookie_header = "session_id=first; session_id=second"
|
||||
result = parse_cookies(cookie_header)
|
||||
|
||||
|
||||
assert result == {"session_id": "second"}
|
||||
|
||||
|
||||
@@ -97,14 +96,14 @@ class TestExtractAccessTokenFromCookies:
|
||||
"""Test extracting access token when present."""
|
||||
cookie_header = "session_id=abc123; access_token=jwt_token_here; user_pref=dark"
|
||||
result = extract_access_token_from_cookies(cookie_header)
|
||||
|
||||
|
||||
assert result == "jwt_token_here"
|
||||
|
||||
def test_extract_access_token_not_present(self):
|
||||
"""Test extracting access token when not present."""
|
||||
cookie_header = "session_id=abc123; user_pref=dark"
|
||||
result = extract_access_token_from_cookies(cookie_header)
|
||||
|
||||
|
||||
assert result is None
|
||||
|
||||
def test_extract_access_token_empty_header(self):
|
||||
@@ -116,21 +115,21 @@ class TestExtractAccessTokenFromCookies:
|
||||
"""Test extracting access token when it's the only cookie."""
|
||||
cookie_header = "access_token=my_jwt_token"
|
||||
result = extract_access_token_from_cookies(cookie_header)
|
||||
|
||||
|
||||
assert result == "my_jwt_token"
|
||||
|
||||
def test_extract_access_token_with_spaces(self):
|
||||
"""Test extracting access token with spaces around values."""
|
||||
cookie_header = " access_token = jwt_token_with_spaces ; other=value "
|
||||
result = extract_access_token_from_cookies(cookie_header)
|
||||
|
||||
|
||||
assert result == "jwt_token_with_spaces"
|
||||
|
||||
def test_extract_access_token_empty_value(self):
|
||||
"""Test extracting access token with empty value."""
|
||||
cookie_header = "access_token=; other=value"
|
||||
result = extract_access_token_from_cookies(cookie_header)
|
||||
|
||||
|
||||
assert result == ""
|
||||
|
||||
def test_extract_access_token_complex_value(self):
|
||||
@@ -138,12 +137,12 @@ class TestExtractAccessTokenFromCookies:
|
||||
jwt_token = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjMiLCJleHAiOjE2MzM5NjY0MDB9.signature"
|
||||
cookie_header = f"session=abc; access_token={jwt_token}; csrf=token"
|
||||
result = extract_access_token_from_cookies(cookie_header)
|
||||
|
||||
|
||||
assert result == jwt_token
|
||||
|
||||
def test_extract_access_token_multiple_equals(self):
|
||||
"""Test extracting access token when value contains equals signs."""
|
||||
cookie_header = "access_token=encoded=data=here; other=simple"
|
||||
result = extract_access_token_from_cookies(cookie_header)
|
||||
|
||||
assert result == "encoded=data=here"
|
||||
|
||||
assert result == "encoded=data=here"
|
||||
|
||||
Reference in New Issue
Block a user