- functional/test_event_tracking.py: 2 recipe-specific tests (P3) — register site → POST /api/event (browser UA) → read back from clickhouse events_v2. test_pageview_event_roundtrip asserts stored name/pathname/hostname; test_custom_event_roundtrip asserts a custom-named goal lands under that name. - test_health_check.py: probe /api/health (200, asserts clickhouse+postgres+sites_cache ready) — fixes the broken/unterminated docstring from the prior WIP edit; / is unreliable (500 init / 302 ready). - recipe_meta.py: HEALTH_PATH=/api/health, HEALTH_OK=(200,); comment corrected. - PARITY.md: P2 vacuous (no recipe-maintainer corpus); documents P3/P4 coverage. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
23 lines
704 B
Python
23 lines
704 B
Python
"""plausible — Phase-2 health_check."""
|
|
|
|
from __future__ import annotations
|
|
|
|
import os
|
|
import sys
|
|
|
|
sys.path.insert(0, os.path.join(os.path.dirname(__file__), "..", "..", "..", "runner"))
|
|
from harness import http as harness_http # noqa: E402
|
|
|
|
|
|
def test_plausible_root_serves(live_app):
|
|
"""GET /api/health → 200 (clickhouse+postgres ready).
|
|
|
|
`/` itself 500s via auth_controller under DISABLE_AUTH, so it is NOT a
|
|
reliable health probe; the dedicated /api/health endpoint is.
|
|
"""
|
|
url = f"https://{live_app}/api/health"
|
|
status, _ = harness_http.retry_http_get(
|
|
url, expect_status=(200,), max_wait=60, interval=3
|
|
)
|
|
assert status == 200, f"GET {url} HTTP {status}"
|