svrnty-hermes-webui-plugin/tests/unit/test_canvas_static.py
2026-05-28 21:44:02 -04:00

40 lines
1.2 KiB
Python

"""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