import pytest @pytest.mark.asyncio async def test_unknown_path_serves_spa_index(client): response = await client.get("/some/client/side/route") assert response.status_code == 200 assert '
' in response.text @pytest.mark.asyncio async def test_auth_routes_still_work_alongside_spa_fallback(client): response = await client.post( "/auth/register", json={"username": "frontendcheck", "password": "spookyspooky"} ) assert response.status_code == 201 @pytest.mark.asyncio async def test_missing_frontend_build_returns_clear_error(client, monkeypatch, tmp_path): import app.main as main_module monkeypatch.setattr(main_module, "FRONTEND_DIST", tmp_path) response = await client.get("/some/route") assert response.status_code == 503 assert "npm run build" in response.json()["detail"]