"""Smoke tests for the health endpoints.""" from httpx import AsyncClient async def test_liveness_ok(client: AsyncClient) -> None: resp = await client.get("/health") assert resp.status_code == 200 assert resp.json() == {"status": "ok"} async def test_correlation_id_echoed(client: AsyncClient) -> None: resp = await client.get("/health", headers={"X-Correlation-Id": "abc123"}) assert resp.headers.get("x-correlation-id") == "abc123" async def test_readiness_reports_checks(client: AsyncClient) -> None: # No DB/Redis running in unit env → degraded, but the contract holds. resp = await client.get("/health/ready") body = resp.json() assert set(body["checks"]) == {"database", "redis", "ml"} assert body["status"] in {"ready", "degraded"}