Files
hermes-webui/tests/test_model_scope_copy.py
2026-04-29 04:33:29 +00:00

41 lines
1.4 KiB
Python

from pathlib import Path
REPO = Path(__file__).resolve().parent.parent
def read(rel: str) -> str:
return (REPO / rel).read_text(encoding="utf-8")
def test_composer_model_dropdown_has_scope_advisory():
ui = read("static/ui.js")
style = read("static/style.css")
assert "model-scope-note" in ui
assert "model_scope_advisory" in ui
assert "Applies to this conversation from your next message." in ui
assert ui.index("dd.appendChild(_scopeNote);") < ui.index("dd.appendChild(_searchRow);")
assert ".model-scope-note" in style
assert "position:sticky" in style
def test_model_selection_toast_describes_conversation_scope():
boot = read("static/boot.js")
i18n = read("static/i18n.js")
assert "model_scope_toast" in boot
assert "Applies to this conversation from your next message." in i18n
assert "model_scope_advisory: 'Applies to this conversation from your next message.'" in i18n
assert "model_scope_toast: 'Applies to this conversation from your next message.'" in i18n
assert "Model change takes effect in your next conversation" not in boot
def test_settings_default_model_copy_describes_new_conversations():
html = read("static/index.html")
i18n = read("static/i18n.js")
assert 'data-i18n="settings_desc_model"' in html
assert "Used for new conversations. Existing conversations keep their selected model." in html
assert "settings_desc_model" in i18n