lamhieu's picture
refactor(core): overhaul architecture for better performance, efficiency, and maintainability
c4742ee
Raw
History Blame Contribute Delete
936 Bytes
"""Bearer parsing + constant-time comparison."""
from __future__ import annotations
from lightweight_embeddings.security.auth import compare_token, extract_bearer
def test_extract_bearer_variants():
assert extract_bearer("Bearer abc") == "abc"
assert extract_bearer("bearer abc") == "abc"
assert extract_bearer("BEARER abc") == "abc"
assert extract_bearer("abc") == "abc"
assert extract_bearer(" Bearer xyz ") == "xyz"
def test_extract_bearer_empty():
assert extract_bearer(None) is None
assert extract_bearer("") is None
assert extract_bearer(" ") is None
assert extract_bearer("Bearer ") is None
def test_compare_token_constant_time():
assert compare_token("secret", "secret") is True
assert compare_token("secret", "wrong") is False
assert compare_token(None, "secret") is False
assert compare_token("secret", None) is False
assert compare_token("", "") is False