DFiP_Budget_planing/api/tests/unit/test_public_paths.py
2026-09-02 15:28:29 +03:00

27 lines
1005 B
Python

from src.core.public_paths import public_endpoint_specs
def test_login_page_is_public_without_root():
specs = public_endpoint_specs("")
assert ("start", "/login") in specs
assert ("absolute", "/") in specs
assert ("absolute", "/api/v1/auth/login") in specs
def test_login_page_is_public_with_root_path():
specs = public_endpoint_specs("/aurora/apps/fastapi-tsygankov-test")
assert ("start", "/login") in specs
assert ("start", "/aurora/apps/fastapi-tsygankov-test/login") in specs
assert ("absolute", "/aurora/apps/fastapi-tsygankov-test/api/v1/auth/login") in specs
def test_api_routes_except_login_and_ws_are_not_public():
specs = public_endpoint_specs("/aurora/apps/fastapi-tsygankov-test")
api_paths = [path for _, path in specs if "/api/" in path]
assert api_paths == [
"/api/v1/auth/login",
"/aurora/apps/fastapi-tsygankov-test/api/v1/auth/login",
"/api/v1/ws",
"/aurora/apps/fastapi-tsygankov-test/api/v1/ws",
]