d73ff9b0fb
Deploy Site / deploy-vercel (push) Has been cancelled
Deploy Site / deploy-docs (push) Has been cancelled
Docker / shell lint / Lint Dockerfile (hadolint) (push) Has been cancelled
Docker / shell lint / Lint docker/ shell scripts (shellcheck) (push) Has been cancelled
Docker Build and Publish / build-amd64 (push) Has been cancelled
Docker Build and Publish / build-arm64 (push) Has been cancelled
Lint (ruff + ty) / ruff + ty diff (push) Has been cancelled
Lint (ruff + ty) / ruff enforcement (blocking) (push) Has been cancelled
Lint (ruff + ty) / Windows footguns (blocking) (push) Has been cancelled
Nix Lockfile Fix / auto-fix-main (push) Has been cancelled
Nix Lockfile Fix / fix (push) Has been cancelled
Nix / nix (macos-latest) (push) Has been cancelled
Nix / nix (ubuntu-latest) (push) Has been cancelled
OSV-Scanner / Scan lockfiles (push) Has been cancelled
Build Skills Index / build-index (push) Has been cancelled
Tests / test (1) (push) Has been cancelled
Tests / test (2) (push) Has been cancelled
Tests / test (3) (push) Has been cancelled
Tests / test (4) (push) Has been cancelled
Tests / test (5) (push) Has been cancelled
Tests / test (6) (push) Has been cancelled
Tests / e2e (push) Has been cancelled
uv.lock check / uv lock --check (push) Has been cancelled
Docker Build and Publish / merge (push) Has been cancelled
Build Skills Index / trigger-deploy (push) Has been cancelled
Tests / save-durations (push) Has been cancelled
35 lines
877 B
Python
35 lines
877 B
Python
import sys
|
|
import types
|
|
|
|
|
|
from hermes_cli.main import _prompt_reasoning_effort_selection
|
|
|
|
|
|
class _FakeTerminalMenu:
|
|
last_choices = None
|
|
|
|
def __init__(self, choices, **kwargs):
|
|
_FakeTerminalMenu.last_choices = choices
|
|
self._cursor_index = kwargs.get("cursor_index")
|
|
|
|
def show(self):
|
|
return self._cursor_index
|
|
|
|
|
|
def test_reasoning_menu_orders_minimal_before_low(monkeypatch):
|
|
fake_module = types.SimpleNamespace(TerminalMenu=_FakeTerminalMenu)
|
|
monkeypatch.setitem(sys.modules, "simple_term_menu", fake_module)
|
|
|
|
selected = _prompt_reasoning_effort_selection(
|
|
["low", "minimal", "medium", "high"],
|
|
current_effort="medium",
|
|
)
|
|
|
|
assert selected == "medium"
|
|
assert _FakeTerminalMenu.last_choices[:4] == [
|
|
" minimal",
|
|
" low",
|
|
" medium ← currently in use",
|
|
" high",
|
|
]
|