use serial_test::serial;
#[test]
fn help_smoke() -> anyhow::Result<()> {
assert_cmd::Command::cargo_bin("lmcpp-server-cli")?
.arg("--help")
.assert()
.success() .stdout(predicates::str::contains("Usage")); Ok(())
}
#[test]
#[serial]
fn pids_when_none() -> anyhow::Result<()> {
assert_cmd::Command::cargo_bin("lmcpp-server-cli")?
.arg("pids")
.assert()
.success()
.stdout(predicates::str::contains("No running"));
Ok(())
}
#[test]
#[serial]
fn killall_is_idempotent() -> anyhow::Result<()> {
assert_cmd::Command::cargo_bin("lmcpp-server-cli")?
.arg("kill-all")
.assert()
.success()
.stdout(predicates::str::contains("Sent termination"));
Ok(())
}
#[test]
fn help_shows_usage() -> anyhow::Result<()> {
assert_cmd::Command::cargo_bin("lmcpp-toolchain-cli")?
.arg("--help")
.assert()
.success()
.stdout(predicates::str::contains("Usage: lmcpp-toolchain-cli"));
Ok(())
}
#[test]
fn clap_argument_errors_reported() -> anyhow::Result<()> {
assert_cmd::Command::cargo_bin("lmcpp-toolchain-cli")?
.args([
"install",
"--backend",
"cpu",
"--backend",
"cuda", ])
.assert()
.failure() .code(2)
.stderr(predicates::str::contains("cannot be used multiple times"));
Ok(())
}