mirror of
https://github.com/nesquena/hermes-webui.git
synced 2026-05-25 11:10:18 +00:00
b14aae4ee5
Co-authored-by: ai-ag2026 <ai-ag2026@users.noreply.github.com>
23 lines
1006 B
Python
23 lines
1006 B
Python
"""Source-level guards for update-check UI status handling."""
|
|
from pathlib import Path
|
|
|
|
REPO_ROOT = Path(__file__).resolve().parents[1]
|
|
PANELS_JS = (REPO_ROOT / "static" / "panels.js").read_text(encoding="utf-8")
|
|
UI_JS = (REPO_ROOT / "static" / "ui.js").read_text(encoding="utf-8")
|
|
|
|
|
|
def test_manual_update_check_displays_api_errors_before_up_to_date():
|
|
"""Manual checks must not translate API error payloads into green success."""
|
|
error_idx = PANELS_JS.index("const errorParts=[]")
|
|
up_to_date_idx = PANELS_JS.index("settings_up_to_date")
|
|
assert error_idx < up_to_date_idx
|
|
assert "data.webui" in PANELS_JS
|
|
assert "data.agent" in PANELS_JS
|
|
assert "settings_update_check_failed')+': '+errorParts.join(', ')" in PANELS_JS
|
|
|
|
|
|
def test_update_error_formatter_strips_generic_fetch_prefix():
|
|
"""The UI should show the actionable git detail, not only 'fetch failed'."""
|
|
assert "function _formatUpdateCheckError(label,info)" in UI_JS
|
|
assert "replace(/^fetch failed" in UI_JS
|