From 0b1448b5b9d4478be8d829ac267bcab79e428117 Mon Sep 17 00:00:00 2001 From: Daniel Hofstetter Date: Sun, 26 Jan 2025 16:09:37 +0100 Subject: [PATCH] kill: test "-l " & adapt error messages --- src/uu/kill/src/kill.rs | 4 ++-- tests/by-util/test_kill.rs | 25 +++++++++++++++++++++---- 2 files changed, 23 insertions(+), 6 deletions(-) diff --git a/src/uu/kill/src/kill.rs b/src/uu/kill/src/kill.rs index 7638dcc448..9fb42899a3 100644 --- a/src/uu/kill/src/kill.rs +++ b/src/uu/kill/src/kill.rs @@ -177,7 +177,7 @@ fn print_signal(signal_name_or_value: &str) -> UResult<()> { } Err(USimpleError::new( 1, - format!("unknown signal name {}", signal_name_or_value.quote()), + format!("{}: invalid signal", signal_name_or_value.quote()), )) } @@ -205,7 +205,7 @@ fn parse_signal_value(signal_name: &str) -> UResult { Some(x) => Ok(x), None => Err(USimpleError::new( 1, - format!("unknown signal name {}", signal_name.quote()), + format!("{}: invalid signal", signal_name.quote()), )), } } diff --git a/tests/by-util/test_kill.rs b/tests/by-util/test_kill.rs index b42e34828f..2e6b6484b2 100644 --- a/tests/by-util/test_kill.rs +++ b/tests/by-util/test_kill.rs @@ -108,6 +108,24 @@ fn test_kill_table_lists_all_vertically() { assert!(signals.contains(&"EXIT")); } +#[test] +fn test_kill_list_one_signal_from_number() { + new_ucmd!() + .arg("-l") + .arg("9") + .succeeds() + .stdout_only("KILL\n"); +} + +#[test] +fn test_kill_list_one_signal_from_invalid_number() { + new_ucmd!() + .arg("-l") + .arg("99") + .fails() + .stderr_contains("'99': invalid signal"); +} + #[test] fn test_kill_list_one_signal_from_name() { // Use SIGKILL because it is 9 on all unixes. @@ -166,7 +184,7 @@ fn test_kill_list_three_signal_first_unknown() { .arg("INT") .arg("KILL") .fails() - .stderr_contains("unknown signal") + .stderr_contains("'IAMNOTASIGNAL': invalid signal") .stdout_matches(&Regex::new("\\d\n\\d").unwrap()); } @@ -176,7 +194,7 @@ fn test_kill_set_bad_signal_name() { .arg("-s") .arg("IAMNOTASIGNAL") // spell-checker:disable-line .fails() - .stderr_contains("unknown signal"); + .stderr_contains("'IAMNOTASIGNAL': invalid signal"); } #[test] @@ -291,8 +309,7 @@ fn test_kill_with_signal_name_new_form_unknown_must_match_input_case() { .arg("IaMnOtAsIgNaL") .arg(format!("{}", target.pid())) .fails() - .stderr_contains("unknown signal") - .stderr_contains("IaMnOtAsIgNaL"); + .stderr_contains("'IaMnOtAsIgNaL': invalid signal"); } #[test]