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>
This commit is contained in:
21
tests/matrix-synapse/test_install.py
Normal file
21
tests/matrix-synapse/test_install.py
Normal file
@ -0,0 +1,21 @@
|
||||
"""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"
|
||||
Reference in New Issue
Block a user