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>
22 lines
1.0 KiB
Python
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"
|