Files
cc-ci/tests/matrix-synapse/test_install.py
autonomic-bot d6a8f421a7
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone Build is passing
M6.5: enroll matrix-synapse (recipe #4, DB+media/large-volume) — install verified green
install 2 passed on host (~2.7m): synapse client API 200 + real versions JSON, no extra config
(SYNAPSE_SERVER_NAME=DOMAIN). upgrade/backup author postgres-marker assertions exercising the
recipe's pg_backup.sh dump/restore hook (the meaningful matrix data path); verifying next.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-27 05:38:40 +01:00

22 lines
1.0 KiB
Python

"""matrix-synapse — install stage (recipe #4, DB + media store). D2 install: the synapse client API
answers 200 over real HTTPS through the gateway (nginx -> synapse). The base recipe has no browser
UI (element-web is an addon), so the functional assertion is the JSON client API, not Playwright."""
import json
import os
import sys
sys.path.insert(0, os.path.join(os.path.dirname(__file__), "..", "..", "runner"))
from harness import lifecycle # noqa: E402
def test_client_api_healthy(deployed_app):
status = lifecycle.http_get(deployed_app, "/_matrix/client/versions")
assert status == 200, f"expected 200 from {deployed_app}/_matrix/client/versions, got {status}"
def test_client_api_advertises_versions(deployed_app):
"""The client-API version document is real synapse JSON (proves the app, not just a proxy 200)."""
body = lifecycle.http_body(deployed_app, "/_matrix/client/versions")
doc = json.loads(body)
assert isinstance(doc.get("versions"), list) and doc["versions"], "no matrix client versions advertised"