Files
gpu-rent/tests/test_prompts.py
T
Leonid Pershin e7784473a2 Refactor CLI and LLM runtime handling for improved user experience
- Removed deprecated console usage in favor of structured logging functions for error handling and user prompts.
- Enhanced CLI prompts for LLM runtime and preset selection, utilizing menu helpers for better user interaction.
- Updated GPU pool scanning output with improved formatting and error indication for clarity.
- Refactored setup wizard to streamline LLM runtime and preset configuration, ensuring a more intuitive setup process.
- Improved documentation and user feedback in CLI outputs to enhance overall usability.
2026-08-21 06:31:15 +03:00

33 lines
1007 B
Python

from gpu_rent.prompts import MenuItem, prompt_menu, resolve_menu_choice
def test_resolve_by_number():
items = [MenuItem("a", "A"), MenuItem("b", "B"), MenuItem("keep", "K")]
assert resolve_menu_choice("2", items, default_key="keep") == "b"
assert resolve_menu_choice("", items, default_key="keep") == "keep"
assert resolve_menu_choice("keep", items, default_key="a") == "keep"
def test_prompt_menu_prints_and_picks():
items = [
MenuItem("recommended", "rec"),
MenuItem("light", "lit"),
MenuItem("keep", "keep yaml"),
]
shown: list[str] = []
def ask(msg: str, default: str = "") -> str:
assert default == "3" # keep is default
return "1"
key = prompt_menu(
"GGUF",
items,
default="keep",
ask=ask,
show=shown.append,
)
assert key == "recommended"
assert any("1. rec" in line for line in shown)
assert any("←" in line for line in shown)