1
Fork 0
mirror of https://github.com/RGBCube/uutils-coreutils synced 2025-07-28 03:27:44 +00:00

tests: revise/standardize usage error testing (for dd, install, mktemp, rm, seq, and touch)

This commit is contained in:
Roy Ivy III 2023-01-08 12:39:49 -06:00
parent 6a9660f9f6
commit d78e1e7399
6 changed files with 45 additions and 62 deletions

View file

@ -13,25 +13,40 @@ fn test_hex_rejects_sign_after_identifier() {
.args(&["0x-123ABC"])
.fails()
.no_stdout()
.stderr_contains("invalid floating point argument: '0x-123ABC'")
.stderr_contains("for more information.");
.usage_error("invalid floating point argument: '0x-123ABC'");
new_ucmd!()
.args(&["0x+123ABC"])
.fails()
.no_stdout()
.stderr_contains("invalid floating point argument: '0x+123ABC'")
.stderr_contains("for more information.");
.usage_error("invalid floating point argument: '0x+123ABC'");
new_ucmd!()
.args(&["--", "-0x-123ABC"])
.fails()
.no_stdout()
.usage_error("invalid floating point argument: '-0x-123ABC'");
new_ucmd!()
.args(&["--", "-0x+123ABC"])
.fails()
.no_stdout()
.usage_error("invalid floating point argument: '-0x+123ABC'");
// test without "--" => argument parsed as (invalid) flag
new_ucmd!()
.args(&["-0x-123ABC"])
.fails()
.no_stdout()
.stderr_contains("which wasn't expected, or isn't valid in this context")
.stderr_contains(
"Found argument '-0' which wasn't expected, or isn't valid in this context",
)
.stderr_contains("For more information try '--help'");
new_ucmd!()
.args(&["-0x+123ABC"])
.fails()
.no_stdout()
.stderr_contains("which wasn't expected, or isn't valid in this context")
.stderr_contains(
"Found argument '-0' which wasn't expected, or isn't valid in this context",
)
.stderr_contains("For more information try '--help'");
}
@ -66,8 +81,7 @@ fn test_hex_identifier_in_wrong_place() {
.args(&["1234ABCD0x"])
.fails()
.no_stdout()
.stderr_contains("invalid floating point argument: '1234ABCD0x'")
.stderr_contains("for more information.");
.usage_error("invalid floating point argument: '1234ABCD0x'");
}
#[test]
@ -119,38 +133,32 @@ fn test_invalid_float() {
.args(&["1e2.3"])
.fails()
.no_stdout()
.stderr_contains("invalid floating point argument: '1e2.3'")
.stderr_contains("for more information.");
.usage_error("invalid floating point argument: '1e2.3'");
new_ucmd!()
.args(&["1e2.3", "2"])
.fails()
.no_stdout()
.stderr_contains("invalid floating point argument: '1e2.3'")
.stderr_contains("for more information.");
.usage_error("invalid floating point argument: '1e2.3'");
new_ucmd!()
.args(&["1", "1e2.3"])
.fails()
.no_stdout()
.stderr_contains("invalid floating point argument: '1e2.3'")
.stderr_contains("for more information.");
.usage_error("invalid floating point argument: '1e2.3'");
new_ucmd!()
.args(&["1e2.3", "2", "3"])
.fails()
.no_stdout()
.stderr_contains("invalid floating point argument: '1e2.3'")
.stderr_contains("for more information.");
.usage_error("invalid floating point argument: '1e2.3'");
new_ucmd!()
.args(&["1", "1e2.3", "3"])
.fails()
.no_stdout()
.stderr_contains("invalid floating point argument: '1e2.3'")
.stderr_contains("for more information.");
.usage_error("invalid floating point argument: '1e2.3'");
new_ucmd!()
.args(&["1", "2", "1e2.3"])
.fails()
.no_stdout()
.stderr_contains("invalid floating point argument: '1e2.3'")
.stderr_contains("for more information.");
.usage_error("invalid floating point argument: '1e2.3'");
}
#[test]
@ -159,8 +167,7 @@ fn test_width_invalid_float() {
.args(&["-w", "1e2.3"])
.fails()
.no_stdout()
.stderr_contains("invalid floating point argument: '1e2.3'")
.stderr_contains("for more information.");
.usage_error("invalid floating point argument: '1e2.3'");
}
// ---- Tests for the big integer based path ----
@ -738,6 +745,5 @@ fn test_invalid_zero_increment_value() {
.args(&["0", "0", "1"])
.fails()
.no_stdout()
.stderr_contains("invalid Zero increment value: '0'")
.stderr_contains("for more information.");
.usage_error("invalid Zero increment value: '0'");
}