"""Milestone 0.1 smoke tests. Proves: - `/healthz` returns 200 without any dependency access. - Every response carries an `X-Request-ID` header (RequestIdMiddleware wired). - The header is echoed back when the caller supplies one. """ from __future__ import annotations from fastapi.testclient import TestClient def test_healthz_returns_ok(client: TestClient) -> None: r = client.get("/healthz") assert r.status_code == 200 assert r.json() == {"status": "ok"} def test_response_carries_request_id(client: TestClient) -> None: r = client.get("/healthz") assert "x-request-id" in {k.lower() for k in r.headers} req_id = r.headers["X-Request-ID"] assert req_id assert len(req_id) >= 8 def test_incoming_request_id_is_honoured(client: TestClient) -> None: r = client.get("/healthz", headers={"X-Request-ID": "test-req-abcd"}) assert r.headers["X-Request-ID"] == "test-req-abcd"