fix tests

This commit is contained in:
2025-10-19 20:49:42 +02:00
parent 4db53c93df
commit e578623999
6 changed files with 434 additions and 54 deletions

View File

@@ -180,14 +180,14 @@ async def test_delete_backup(authenticated_client, mock_config_service):
@pytest.mark.asyncio
async def test_config_persistence(client, mock_config_service):
async def test_config_persistence(authenticated_client, mock_config_service):
"""Test end-to-end configuration persistence."""
# Get initial config
resp = await client.get("/api/config")
resp = await authenticated_client.get("/api/config")
assert resp.status_code == 200
initial = resp.json()
# Validate it can be loaded again
resp2 = await client.get("/api/config")
resp2 = await authenticated_client.get("/api/config")
assert resp2.status_code == 200
assert resp2.json() == initial

View File

@@ -45,6 +45,16 @@ async def client():
@pytest.fixture
async def authenticated_client(client):
"""Create authenticated test client with JWT token."""
# Setup anime directory in settings
import tempfile
from src.config.settings import settings
settings.anime_directory = tempfile.gettempdir()
# Reset series app to pick up new directory
from src.server.utils.dependencies import reset_series_app
reset_series_app()
# Setup master password
await client.post(
"/api/auth/setup",
@@ -142,20 +152,20 @@ class TestFrontendAuthentication:
)
# Try to access protected endpoint without token
response = await client.get("/api/v1/anime")
response = await client.get("/api/v1/anime/")
assert response.status_code == 401
async def test_authenticated_request_succeeds(self, authenticated_client):
"""Test that requests with valid token succeed."""
with patch(
"src.server.services.anime_service.AnimeService"
) as mock_service:
mock_instance = AsyncMock()
mock_instance.get_all_series = AsyncMock(return_value=[])
mock_service.return_value = mock_instance
with patch("src.server.utils.dependencies.get_series_app") as mock_get_app:
mock_app = AsyncMock()
mock_list = AsyncMock()
mock_list.GetMissingEpisode = AsyncMock(return_value=[])
mock_app.List = mock_list
mock_get_app.return_value = mock_app
response = await authenticated_client.get("/api/v1/anime")
response = await authenticated_client.get("/api/v1/anime/")
assert response.status_code == 200
@@ -179,7 +189,7 @@ class TestFrontendAnimeAPI:
])
mock_get_service.return_value = mock_service
response = await authenticated_client.get("/api/v1/anime")
response = await authenticated_client.get("/api/v1/anime/")
assert response.status_code == 200
data = response.json()