feat: add MCP server visibility panel
This commit is contained in:
1 parent
2bbaad3135
commit
399326f923
8 files changed
+301
-120
No files matched your search
@@ -0,0 +1,46 @@
|
||||
"""Regression tests for issue #696 — MCP server visibility panel MVP."""
|
||||
from pathlib import Path
|
||||
|
||||
ROOT = Path(__file__).resolve().parents[1]
|
||||
|
||||
|
||||
def read(relpath: str) -> str:
|
||||
return (ROOT / relpath).read_text(encoding="utf-8")
|
||||
|
||||
|
||||
def test_settings_system_panel_contains_readonly_mcp_visibility_section():
|
||||
html = read("static/index.html")
|
||||
assert 'data-i18n="mcp_servers_title"' in html
|
||||
assert 'id="mcpServerList"' in html
|
||||
assert 'class="mcp-restart-hint"' in html
|
||||
assert 'id="mcpAddFormWrap"' not in html
|
||||
assert 'onclick="showMcpAddForm()"' not in html
|
||||
|
||||
|
||||
def test_mcp_panel_renders_status_badges_tool_counts_and_empty_error_states():
|
||||
js = read("static/panels.js")
|
||||
assert "function _mcpStatusLabel" in js
|
||||
assert "mcp-status-badge" in js
|
||||
assert "mcp-tool-count" in js
|
||||
assert "mcp-empty-state" in js
|
||||
assert "mcp-error-state" in js
|
||||
assert "mcp_toggle_followup" in js
|
||||
assert "api('/api/mcp/servers')" in js
|
||||
assert "mcp-delete-btn" not in js
|
||||
assert "showMcpAddForm" not in js
|
||||
assert "saveMcpServer" not in js
|
||||
|
||||
|
||||
def test_mcp_i18n_includes_visibility_status_labels():
|
||||
i18n = read("static/i18n.js")
|
||||
for key in [
|
||||
"mcp_status_active",
|
||||
"mcp_status_configured",
|
||||
"mcp_status_disabled",
|
||||
"mcp_status_invalid_config",
|
||||
"mcp_tool_count",
|
||||
"mcp_enabled_yes",
|
||||
"mcp_enabled_no",
|
||||
"mcp_toggle_followup",
|
||||
]:
|
||||
assert key in i18n
|
||||
Reference in new issue
Block a user