Files
Nexus/tests/chain/test_auth_flow.py
T

32 lines
917 B
Python
Raw Normal View History

"""CH-AUTH-001 — login → refresh → new access token."""
from __future__ import annotations
from unittest.mock import MagicMock
import pytest
from server.api.dependencies import get_auth_service
pytestmark = pytest.mark.chain
@pytest.mark.asyncio
async def test_login_refresh_chain(db_session, test_admin, mock_request):
mock_request.state.db = db_session
service = await get_auth_service(mock_request)
login_result = await service.login(
username=test_admin["admin"].username,
password="test123",
ip_address="127.0.0.1",
)
assert login_result["success"] is True
assert login_result.get("access_token")
refresh_raw = login_result.get("refresh_token")
assert refresh_raw
refresh_result = await service.refresh_token(refresh_raw, ip_address="127.0.0.1")
assert refresh_result["success"] is True
assert refresh_result.get("access_token")