"""Scan-to-connect endpoints: /v1/connect/info and /v1/connect/qr (admin-only).""" from __future__ import annotations from conftest import ADMIN_AUTH, INVITE_CODE def test_connect_info_admin(client): r = client.get("/v1/connect/info", headers=ADMIN_AUTH) assert r.status_code == 200, r.text data = r.json() assert data["invite_code"] == INVITE_CODE assert data["base_urls"], "expected at least one candidate URL" for u in data["base_urls"]: assert u.endswith("/app") def test_connect_info_forbidden_without_admin(client, member_auth): assert client.get("/v1/connect/info", headers=member_auth).status_code == 403 assert client.get("/v1/connect/info").status_code == 401 def test_connect_qr_svg_admin(client): r = client.get("/v1/connect/qr", headers=ADMIN_AUTH) assert r.status_code == 200, r.text assert r.headers["content-type"].startswith("image/svg+xml") body = r.text assert body.startswith("