test(ignore_errors): Add help & version cmd tests

This commit is contained in:
Sebastian Toh 2023-06-28 08:51:20 +08:00
parent 1f71fd9e99
commit d451e0a60c

View file

@ -1,5 +1,7 @@
use clap::{arg, Arg, ArgAction, Command}; use clap::{arg, Arg, ArgAction, Command};
use super::utils;
#[test] #[test]
fn single_short_arg_without_value() { fn single_short_arg_without_value() {
let cmd = Command::new("cmd").ignore_errors(true).arg(arg!( let cmd = Command::new("cmd").ignore_errors(true).arg(arg!(
@ -124,3 +126,26 @@ fn subcommand() {
Some("some other val") Some("some other val")
); );
} }
#[test]
#[should_panic(expected = "`Result::unwrap_err()` on an `Ok` value")]
fn help_command() {
static HELP: &str = "\
Usage: test
Options:
-h, --help Print help
";
let cmd = Command::new("test").ignore_errors(true);
utils::assert_output(cmd, "test --help", HELP, false);
}
#[test]
#[should_panic(expected = "`Result::unwrap_err()` on an `Ok` value")]
fn version_command() {
let cmd = Command::new("test").ignore_errors(true).version("0.1");
utils::assert_output(cmd, "test --version", "test 0.1\n", false);
}