2023-07-20 18:34:09 +00:00
|
|
|
use crate::common;
|
2022-03-07 20:03:46 +00:00
|
|
|
|
|
|
|
#[test]
|
|
|
|
fn basic() {
|
|
|
|
let name = "my-app";
|
|
|
|
let cmd = common::basic_command(name);
|
2024-02-14 22:44:57 +00:00
|
|
|
common::assert_matches(
|
|
|
|
snapbox::file!["../snapshots/basic.ps1"],
|
2022-03-07 20:03:46 +00:00
|
|
|
clap_complete::shells::PowerShell,
|
|
|
|
cmd,
|
|
|
|
name,
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
#[test]
|
|
|
|
fn feature_sample() {
|
|
|
|
let name = "my-app";
|
|
|
|
let cmd = common::feature_sample_command(name);
|
2024-02-14 22:44:57 +00:00
|
|
|
common::assert_matches(
|
|
|
|
snapbox::file!["../snapshots/feature_sample.ps1"],
|
2022-03-07 20:03:46 +00:00
|
|
|
clap_complete::shells::PowerShell,
|
|
|
|
cmd,
|
|
|
|
name,
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
#[test]
|
|
|
|
fn special_commands() {
|
|
|
|
let name = "my-app";
|
|
|
|
let cmd = common::special_commands_command(name);
|
2024-02-14 22:44:57 +00:00
|
|
|
common::assert_matches(
|
|
|
|
snapbox::file!["../snapshots/special_commands.ps1"],
|
2022-03-07 20:03:46 +00:00
|
|
|
clap_complete::shells::PowerShell,
|
|
|
|
cmd,
|
|
|
|
name,
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
#[test]
|
|
|
|
fn quoting() {
|
|
|
|
let name = "my-app";
|
|
|
|
let cmd = common::quoting_command(name);
|
2024-02-14 22:44:57 +00:00
|
|
|
common::assert_matches(
|
|
|
|
snapbox::file!["../snapshots/quoting.ps1"],
|
2022-03-07 20:03:46 +00:00
|
|
|
clap_complete::shells::PowerShell,
|
|
|
|
cmd,
|
|
|
|
name,
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
#[test]
|
|
|
|
fn aliases() {
|
|
|
|
let name = "my-app";
|
|
|
|
let cmd = common::aliases_command(name);
|
2024-02-14 22:44:57 +00:00
|
|
|
common::assert_matches(
|
|
|
|
snapbox::file!["../snapshots/aliases.ps1"],
|
2022-03-07 20:03:46 +00:00
|
|
|
clap_complete::shells::PowerShell,
|
|
|
|
cmd,
|
|
|
|
name,
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
#[test]
|
|
|
|
fn sub_subcommands() {
|
|
|
|
let name = "my-app";
|
|
|
|
let cmd = common::sub_subcommands_command(name);
|
2024-02-14 22:44:57 +00:00
|
|
|
common::assert_matches(
|
|
|
|
snapbox::file!["../snapshots/sub_subcommands.ps1"],
|
2022-03-07 20:03:46 +00:00
|
|
|
clap_complete::shells::PowerShell,
|
|
|
|
cmd,
|
|
|
|
name,
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
2024-01-19 09:25:30 +00:00
|
|
|
#[test]
|
|
|
|
fn custom_bin_name() {
|
|
|
|
let name = "my-app";
|
|
|
|
let bin_name = "bin-name";
|
|
|
|
let cmd = common::basic_command(name);
|
2024-02-14 22:44:57 +00:00
|
|
|
common::assert_matches(
|
|
|
|
snapbox::file!["../snapshots/custom_bin_name.ps1"],
|
2024-01-19 09:25:30 +00:00
|
|
|
clap_complete::shells::PowerShell,
|
|
|
|
cmd,
|
|
|
|
bin_name,
|
|
|
|
);
|
|
|
|
}
|
|
|
|
|
2022-03-07 20:03:46 +00:00
|
|
|
#[test]
|
|
|
|
fn value_hint() {
|
|
|
|
let name = "my-app";
|
|
|
|
let cmd = common::value_hint_command(name);
|
2024-02-14 22:44:57 +00:00
|
|
|
common::assert_matches(
|
|
|
|
snapbox::file!["../snapshots/value_hint.ps1"],
|
2022-03-07 20:03:46 +00:00
|
|
|
clap_complete::shells::PowerShell,
|
|
|
|
cmd,
|
|
|
|
name,
|
|
|
|
);
|
|
|
|
}
|
2023-01-09 10:50:58 +00:00
|
|
|
|
|
|
|
#[test]
|
|
|
|
fn value_terminator() {
|
|
|
|
let name = "my-app";
|
|
|
|
let cmd = common::value_terminator_command(name);
|
2024-02-14 22:44:57 +00:00
|
|
|
common::assert_matches(
|
|
|
|
snapbox::file!["../snapshots/value_terminator.ps1"],
|
2023-01-09 10:50:58 +00:00
|
|
|
clap_complete::shells::PowerShell,
|
|
|
|
cmd,
|
|
|
|
name,
|
|
|
|
);
|
|
|
|
}
|
2023-01-10 08:14:52 +00:00
|
|
|
|
|
|
|
#[test]
|
|
|
|
fn two_multi_valued_arguments() {
|
|
|
|
let name = "my-app";
|
|
|
|
let cmd = common::two_multi_valued_arguments_command(name);
|
2024-02-14 22:44:57 +00:00
|
|
|
common::assert_matches(
|
|
|
|
snapbox::file!["../snapshots/two_multi_valued_arguments.ps1"],
|
2023-01-10 08:14:52 +00:00
|
|
|
clap_complete::shells::PowerShell,
|
|
|
|
cmd,
|
|
|
|
name,
|
|
|
|
);
|
|
|
|
}
|
2023-05-10 18:21:01 +00:00
|
|
|
|
|
|
|
#[test]
|
|
|
|
fn subcommand_last() {
|
|
|
|
let name = "my-app";
|
|
|
|
let cmd = common::subcommand_last(name);
|
2024-02-14 22:44:57 +00:00
|
|
|
common::assert_matches(
|
|
|
|
snapbox::file!["../snapshots/subcommand_last.ps1"],
|
2023-05-10 18:21:01 +00:00
|
|
|
clap_complete::shells::PowerShell,
|
|
|
|
cmd,
|
|
|
|
name,
|
|
|
|
);
|
|
|
|
}
|