"""Static checks for the Canvas panel assets.""" from pathlib import Path ROOT = Path(__file__).resolve().parents[2] CANVAS_JS = ROOT / "static" / "canvas.js" CANVAS_CSS = ROOT / "static" / "canvas.css" def test_canvas_assets_exist(): assert CANVAS_JS.is_file() assert CANVAS_CSS.is_file() def test_canvas_js_is_idempotent_and_uses_plugin_routes(): src = CANVAS_JS.read_text() assert "__svrntyCanvasLoaded" in src assert "request: _request" in src assert "svrnty:canvas-generate" in src assert 'name: "canvas"' in src assert "/api/canvas/status" in src assert "/api/canvas/tools" in src assert "/api/canvas/proxy" in src assert "/api/canvas/command" in src assert "/api/canvas/events" in src assert "/api/canvas/design-context" in src assert "designContext" in src assert "BTE context ready" in src assert "data-canvas-action=\"save\"" in src assert "data-canvas-action=\"prototype-link\"" in src assert "/prototype-edges" in src assert "/export" in src assert "status.capabilities" in src def test_canvas_css_is_panel_scoped(): src = CANVAS_CSS.read_text() assert ".svrnty-canvas-" in src assert ".svrnty-canvas-overlay" in src