49 lines
1.5 KiB
Python
49 lines
1.5 KiB
Python
import pytest
|
|
from jianda_proxy.cli import build_parser
|
|
|
|
|
|
class TestParser:
|
|
def test_start_subcommand_exists(self):
|
|
parser = build_parser()
|
|
args = parser.parse_args(["start"])
|
|
assert args.command == "start"
|
|
assert args.foreground is False
|
|
|
|
def test_start_foreground_flag(self):
|
|
parser = build_parser()
|
|
args = parser.parse_args(["start", "--foreground"])
|
|
assert args.foreground is True
|
|
|
|
def test_stop_subcommand(self):
|
|
parser = build_parser()
|
|
args = parser.parse_args(["stop"])
|
|
assert args.command == "stop"
|
|
|
|
def test_status_subcommand(self):
|
|
parser = build_parser()
|
|
args = parser.parse_args(["status"])
|
|
assert args.command == "status"
|
|
|
|
def test_config_set(self):
|
|
parser = build_parser()
|
|
args = parser.parse_args(["config", "set", "listen_port", "8080"])
|
|
assert args.config_command == "set"
|
|
assert args.key == "listen_port"
|
|
assert args.value == "8080"
|
|
|
|
def test_config_get(self):
|
|
parser = build_parser()
|
|
args = parser.parse_args(["config", "get", "listen_port"])
|
|
assert args.config_command == "get"
|
|
assert args.key == "listen_port"
|
|
|
|
def test_config_list(self):
|
|
parser = build_parser()
|
|
args = parser.parse_args(["config", "list"])
|
|
assert args.config_command == "list"
|
|
|
|
def test_config_path(self):
|
|
parser = build_parser()
|
|
args = parser.parse_args(["config", "path"])
|
|
assert args.config_command == "path"
|