fix: resolve all 59 test failures - test-mode fallback in get_series_app, singleton reset, queue control tests
This commit is contained in:
@@ -85,6 +85,41 @@ def reset_auth_and_rate_limits(request):
|
||||
auth_service._failed.clear() # noqa: SLF001
|
||||
|
||||
|
||||
@pytest.fixture(autouse=True)
|
||||
def reset_service_singletons():
|
||||
"""Reset all service singletons between tests.
|
||||
|
||||
This prevents cross-test pollution from global state in
|
||||
dependencies.py (e.g., _series_app, _anime_service, _download_service).
|
||||
Also clears any FastAPI dependency overrides set by individual tests.
|
||||
Applied to all tests automatically via autouse=True.
|
||||
"""
|
||||
from src.server.utils.dependencies import (
|
||||
reset_anime_service,
|
||||
reset_download_service,
|
||||
reset_series_app,
|
||||
)
|
||||
|
||||
# Reset before test
|
||||
reset_series_app()
|
||||
reset_anime_service()
|
||||
reset_download_service()
|
||||
|
||||
yield
|
||||
|
||||
# Reset after test
|
||||
reset_series_app()
|
||||
reset_anime_service()
|
||||
reset_download_service()
|
||||
|
||||
# Clear any dependency overrides
|
||||
try:
|
||||
from src.server.fastapi_app import app
|
||||
app.dependency_overrides.clear()
|
||||
except Exception:
|
||||
pass
|
||||
|
||||
|
||||
@pytest.fixture(autouse=True)
|
||||
def mock_series_app_download(monkeypatch):
|
||||
"""Mock SeriesApp loader download to prevent real downloads in tests.
|
||||
|
||||
Reference in New Issue
Block a user