feat(2): Q4.7 plausible — §4.3 event-tracking functional tests + PARITY.md; /api/health readiness probe
- 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>
This commit is contained in:
@ -10,9 +10,13 @@ from harness import http as harness_http # noqa: E402
|
||||
|
||||
|
||||
def test_plausible_root_serves(live_app):
|
||||
"""GET / → 200 or 302 (redirect to login or app shell)."""
|
||||
url = f"https://{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, 302), max_wait=60, interval=3
|
||||
url, expect_status=(200,), max_wait=60, interval=3
|
||||
)
|
||||
assert status in (200, 302), f"GET {url} HTTP {status}"
|
||||
assert status == 200, f"GET {url} HTTP {status}"
|
||||
|
||||
Reference in New Issue
Block a user