Forward xiaohe upgrade --beta so the wrapper matches the agent CLI.
This commit is contained in:
@@ -11,11 +11,17 @@ import click
|
|||||||
@click.command("upgrade")
|
@click.command("upgrade")
|
||||||
@click.argument("version", required=False)
|
@click.argument("version", required=False)
|
||||||
@click.option("--force", is_flag=True, help="Reinstall even if already on that version")
|
@click.option("--force", is_flag=True, help="Reinstall even if already on that version")
|
||||||
|
@click.option(
|
||||||
|
"--beta",
|
||||||
|
is_flag=True,
|
||||||
|
help="Forward to xiaohe upgrade --beta",
|
||||||
|
)
|
||||||
@click.option("--user", "user", default=None, hidden=True)
|
@click.option("--user", "user", default=None, hidden=True)
|
||||||
@click.option("--password", default=None, hidden=True)
|
@click.option("--password", default=None, hidden=True)
|
||||||
def upgrade_cmd(
|
def upgrade_cmd(
|
||||||
version: str | None,
|
version: str | None,
|
||||||
force: bool,
|
force: bool,
|
||||||
|
beta: bool,
|
||||||
user: str | None,
|
user: str | None,
|
||||||
password: str | None,
|
password: str | None,
|
||||||
) -> None:
|
) -> None:
|
||||||
@@ -31,4 +37,6 @@ def upgrade_cmd(
|
|||||||
cmd.append(version)
|
cmd.append(version)
|
||||||
if force:
|
if force:
|
||||||
cmd.append("--force")
|
cmd.append("--force")
|
||||||
|
if beta:
|
||||||
|
cmd.append("--beta")
|
||||||
raise SystemExit(subprocess.call(cmd))
|
raise SystemExit(subprocess.call(cmd))
|
||||||
|
|||||||
@@ -19,6 +19,15 @@ class TestUpgradeCommand:
|
|||||||
["/bin/xiaohe", "upgrade", "0.5.1", "--force"]
|
["/bin/xiaohe", "upgrade", "0.5.1", "--force"]
|
||||||
)
|
)
|
||||||
|
|
||||||
|
def test_forwards_beta(self) -> None:
|
||||||
|
with (
|
||||||
|
patch.object(up_mod.shutil, "which", return_value="/bin/xiaohe"),
|
||||||
|
patch.object(up_mod.subprocess, "call", return_value=0) as call,
|
||||||
|
):
|
||||||
|
result = CliRunner().invoke(up_mod.upgrade_cmd, ["--beta"])
|
||||||
|
assert result.exit_code == 0
|
||||||
|
call.assert_called_once_with(["/bin/xiaohe", "upgrade", "--beta"])
|
||||||
|
|
||||||
def test_missing_xiaohe(self) -> None:
|
def test_missing_xiaohe(self) -> None:
|
||||||
with patch.object(up_mod.shutil, "which", return_value=None):
|
with patch.object(up_mod.shutil, "which", return_value=None):
|
||||||
result = CliRunner().invoke(up_mod.upgrade_cmd, [])
|
result = CliRunner().invoke(up_mod.upgrade_cmd, [])
|
||||||
|
|||||||
Reference in New Issue
Block a user