fix tests
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -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()
|
||||
|
||||
Reference in New Issue
Block a user