Files
wehub-resource-sync a2cb1f9821
Wiki / validate (push) Has been cancelled
Deploy Wiki / Deploy to Cloudflare Pages (push) Has been cancelled
CI / test (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 13:03:55 +08:00

45 lines
1.1 KiB
Python

from __future__ import annotations
import pytest
from cli import _legacy
def test_data_parser_accepts_status_mode_and_usage() -> None:
parser = _legacy._build_parser()
status = parser.parse_args(["data", "status"])
assert status.command == "data"
assert status.data_command == "status"
free = parser.parse_args(["data", "mode", "free"])
assert free.command == "data"
assert free.data_command == "mode"
assert free.mode == "free"
paid = parser.parse_args([
"data",
"mode",
"paid",
"--budget",
"30",
"--key",
"sk-test",
"--url",
"https://qveris.test/api/v1",
])
assert paid.mode == "paid"
assert paid.budget == 30
assert paid.key == "sk-test"
assert paid.url == "https://qveris.test/api/v1"
usage = parser.parse_args(["data", "usage"])
assert usage.data_command == "usage"
def test_qveris_is_not_a_top_level_user_command() -> None:
parser = _legacy._build_parser()
with pytest.raises(SystemExit):
parser.parse_args(["qveris", "status"])