diff --git a/src/uu/chmod/src/chmod.rs b/src/uu/chmod/src/chmod.rs index 6875ac66b84..ccd83cdb086 100644 --- a/src/uu/chmod/src/chmod.rs +++ b/src/uu/chmod/src/chmod.rs @@ -963,6 +963,6 @@ mod tests { let (c, a, i) = extract_negative_modes(["--", "-r", "file"].iter().map(OsString::from)); assert_eq!(c, None); assert_eq!(a, ["--", "-r", "file"]); - assert!(i.is_empty()); + assert_eq!(i, [] as [_; 0]); } } diff --git a/src/uu/cut/src/matcher.rs b/src/uu/cut/src/matcher.rs index 036daa6c027..a006204eaa6 100644 --- a/src/uu/cut/src/matcher.rs +++ b/src/uu/cut/src/matcher.rs @@ -21,7 +21,7 @@ pub struct ExactMatcher<'a> { impl<'a> ExactMatcher<'a> { pub fn new(needle: &'a [u8]) -> Self { - assert!(!needle.is_empty()); + assert_ne!(needle, []); Self { needle } } } @@ -51,7 +51,7 @@ pub struct MbExactMatcher<'a> { impl<'a> MbExactMatcher<'a> { pub fn new(needle: &'a [u8]) -> Self { - assert!(!needle.is_empty()); + assert_ne!(needle, []); Self { needle } } } diff --git a/src/uu/cut/src/searcher.rs b/src/uu/cut/src/searcher.rs index a25fa7909a1..53663406efe 100644 --- a/src/uu/cut/src/searcher.rs +++ b/src/uu/cut/src/searcher.rs @@ -58,7 +58,7 @@ mod exact_searcher_tests { let matcher = ExactMatcher::new("a".as_bytes()); let iter = Searcher::new(&matcher, "".as_bytes()); let items: Vec<(usize, usize)> = iter.collect(); - assert!(items.is_empty()); + assert_eq!(items, [] as [_; 0]); } fn test_multibyte(line: &[u8], expected: &[(usize, usize)]) { @@ -137,7 +137,7 @@ mod whitespace_searcher_tests { let matcher = WhitespaceMatcher {}; let iter = Searcher::new(&matcher, "".as_bytes()); let items: Vec<(usize, usize)> = iter.collect(); - assert!(items.is_empty()); + assert_eq!(items, [] as [_; 0]); } fn test_multispace(line: &[u8], expected: &[(usize, usize)]) { diff --git a/src/uu/dd/src/dd.rs b/src/uu/dd/src/dd.rs index 9d9a8927d1b..1c840ca0fbc 100644 --- a/src/uu/dd/src/dd.rs +++ b/src/uu/dd/src/dd.rs @@ -1796,6 +1796,6 @@ mod tests { use crate::AlignedBuf; let buf = AlignedBuf::new(0).unwrap(); - assert!(buf.as_bytes().is_empty()); + assert_eq!(buf.as_bytes(), []); } } diff --git a/src/uu/head/src/head.rs b/src/uu/head/src/head.rs index cc7c94bd95f..6cf9befd8df 100644 --- a/src/uu/head/src/head.rs +++ b/src/uu/head/src/head.rs @@ -656,7 +656,7 @@ mod tests { assert!(!opts.quiet); assert_eq!(opts.line_ending, LineEnding::Newline); assert_eq!(opts.mode, Mode::FirstLines(10)); - assert!(opts.files.is_empty()); + assert_eq!(opts.files, [] as [OsString; 0]); } fn arg_outputs(src: &str) -> Result { diff --git a/src/uu/ls/src/colors.rs b/src/uu/ls/src/colors.rs index 7a08b3de572..94543e4eb1c 100644 --- a/src/uu/ls/src/colors.rs +++ b/src/uu/ls/src/colors.rs @@ -142,7 +142,7 @@ impl<'a> StyleManager<'a> { style_code: &mut String, ) { if let Some(raw) = self.indicator_codes.get(&indicator).cloned() { - debug_assert!(!raw.is_empty()); + debug_assert_ne!(raw, ""); style_code.push_str(self.reset(!self.initial_reset_is_done)); style_code.push_str(ANSI_CSI); style_code.push_str(&raw); diff --git a/src/uu/ls/src/output.rs b/src/uu/ls/src/output.rs index a4ead6c111c..3f449cbdf19 100644 --- a/src/uu/ls/src/output.rs +++ b/src/uu/ls/src/output.rs @@ -332,8 +332,8 @@ mod tests { fn test_streaming_output_new() { let collector = StreamingOutput::new(); assert!(collector.entries().is_empty()); - assert!(collector.directories().is_empty()); - assert!(collector.totals().is_empty()); + assert_eq!(collector.directories(), [] as [PathBuf; 0]); + assert_eq!(collector.totals(), []); } #[test] @@ -369,8 +369,8 @@ mod tests { collector.clear(); assert!(collector.entries().is_empty()); - assert!(collector.directories().is_empty()); - assert!(collector.totals().is_empty()); + assert_eq!(collector.directories(), [] as [PathBuf; 0]); + assert_eq!(collector.totals(), []); } #[test] diff --git a/src/uu/shuf/src/shuf.rs b/src/uu/shuf/src/shuf.rs index b523001ce51..d3ebfbc7387 100644 --- a/src/uu/shuf/src/shuf.rs +++ b/src/uu/shuf/src/shuf.rs @@ -497,7 +497,7 @@ mod test_split_seps { #[test] fn test_empty_input() { - assert!(split_seps(b"", b'\n').is_empty()); + assert_eq!(split_seps(b"", b'\n'), [] as [&[_]; 0]); } #[test] diff --git a/src/uu/sort/src/chunks.rs b/src/uu/sort/src/chunks.rs index ca9efcd13e8..0c003351822 100644 --- a/src/uu/sort/src/chunks.rs +++ b/src/uu/sort/src/chunks.rs @@ -273,12 +273,12 @@ fn parse_lines<'a>( let read = read.strip_suffix(&[separator]).unwrap_or(read); assert!(lines.is_empty()); - assert!(line_data.selections.is_empty()); - assert!(line_data.num_infos.is_empty()); - assert!(line_data.parsed_floats.is_empty()); - assert!(line_data.line_num_floats.is_empty()); - assert!(line_data.collation_key_buffer.is_empty()); - assert!(line_data.collation_key_ends.is_empty()); + assert_eq!(line_data.selections, [] as [&[_]; 0]); + assert_eq!(line_data.num_infos, [] as [_; 0]); + assert_eq!(line_data.parsed_floats, [] as [_; 0]); + assert_eq!(line_data.line_num_floats, [] as [_; 0]); + assert_eq!(line_data.collation_key_buffer, [] as [_; 0]); + assert_eq!(line_data.collation_key_ends, [] as [_; 0]); token_buffer.clear(); let mut estimated = (*line_count_hint).max(1); let mut exact_line_count = None; diff --git a/src/uu/sort/src/sort.rs b/src/uu/sort/src/sort.rs index f47f457eda9..c03c280f2d2 100644 --- a/src/uu/sort/src/sort.rs +++ b/src/uu/sort/src/sort.rs @@ -883,7 +883,7 @@ fn tokenize( token_buffer: &mut Vec, precomputed: &Precomputed, ) { - assert!(token_buffer.is_empty()); + assert_eq!(token_buffer, &[] as &[Field; 0]); if let Some(separator) = separator { tokenize_with_separator(line, separator, token_buffer); } else { diff --git a/src/uucore/src/lib/features/encoding.rs b/src/uucore/src/lib/features/encoding.rs index 4a6e3394835..f441e2e6def 100644 --- a/src/uucore/src/lib/features/encoding.rs +++ b/src/uucore/src/lib/features/encoding.rs @@ -44,7 +44,7 @@ impl Base64SimdWrapper { ) -> Self { assert!(valid_decoding_multiple > 0); assert!(unpadded_multiple > 0); - assert!(!alphabet.is_empty()); + assert_ne!(alphabet, []); Self { alphabet, @@ -195,7 +195,7 @@ impl EncodingWrapper { assert!(unpadded_multiple > 0); - assert!(!alphabet.is_empty()); + assert_ne!(alphabet, []); Self { alphabet, diff --git a/src/uucore/src/lib/features/i18n/charmap.rs b/src/uucore/src/lib/features/i18n/charmap.rs index 8c394cc677f..c3c045cc689 100644 --- a/src/uucore/src/lib/features/i18n/charmap.rs +++ b/src/uucore/src/lib/features/i18n/charmap.rs @@ -69,7 +69,7 @@ impl Encoding { /// `bytes.len()`, and never `0` for a non-empty slice. #[inline] pub fn char_len(self, bytes: &[u8]) -> usize { - debug_assert!(!bytes.is_empty()); + debug_assert_ne!(bytes, []); let b0 = bytes[0]; if b0 <= 0x7F { return 1; diff --git a/src/uucore/src/lib/mods/locale.rs b/src/uucore/src/lib/mods/locale.rs index 60ca9d4237b..e8c38e07397 100644 --- a/src/uucore/src/lib/mods/locale.rs +++ b/src/uucore/src/lib/mods/locale.rs @@ -1687,7 +1687,7 @@ invalid-syntax = This is { $missing // Test that we can get messages (should use embedded English for "test" utility) let message = get_message("test-about"); // Since we're using embedded resources, we should get the expected message - assert!(!message.is_empty()); + assert_ne!(message, ""); // Restore original LANG value if let Some(val) = original_lang { @@ -1718,7 +1718,7 @@ invalid-syntax = This is { $missing // Should fall back to English embedded resources let message = get_message("test-about"); - assert!(!message.is_empty()); // Should get something, not just the key + assert_ne!(message, ""); // Should get something, not just the key // Restore original LANG value if let Some(val) = original_lang { @@ -1797,18 +1797,18 @@ invalid-syntax = This is { $missing // Test that common strings are available after initialization let error_after_init = get_message("common-error"); // Should either be translated or return the key (but not panic) - assert!(!error_after_init.is_empty()); + assert_ne!(error_after_init, ""); let tip_after_init = get_message("common-tip"); - assert!(!tip_after_init.is_empty()); + assert_ne!(tip_after_init, ""); // Test that clap error keys work with fallbacks let unknown_arg_key = get_message("clap-error-unexpected-argument"); - assert!(!unknown_arg_key.is_empty()); + assert_ne!(unknown_arg_key, ""); // Test usage key fallback let usage_key = get_message("common-usage"); - assert!(!usage_key.is_empty()); + assert_ne!(usage_key, ""); }) .join() .unwrap(); diff --git a/tests/by-util/test_basename.rs b/tests/by-util/test_basename.rs index 62b1481ca21..2e87412a535 100644 --- a/tests/by-util/test_basename.rs +++ b/tests/by-util/test_basename.rs @@ -97,14 +97,7 @@ fn test_zero_param() { } fn expect_error(input: &[&str]) { - assert!( - !new_ucmd!() - .args(input) - .fails() - .no_stdout() - .stderr_str() - .is_empty() - ); + assert_ne!(new_ucmd!().args(input).fails().no_stdout().stderr_str(), ""); } #[test] diff --git a/tests/by-util/test_chown.rs b/tests/by-util/test_chown.rs index 8b56b12b2bb..1d8a90591b2 100644 --- a/tests/by-util/test_chown.rs +++ b/tests/by-util/test_chown.rs @@ -93,7 +93,7 @@ fn test_chown_only_owner() { return; } let user_name = String::from(result.stdout_str().trim()); - assert!(!user_name.is_empty()); + assert_ne!(user_name, ""); let file1 = "test_chown_file1"; at.touch(file1); @@ -130,7 +130,7 @@ fn test_chown_only_owner_colon() { return; } let user_name = String::from(result.stdout_str().trim()); - assert!(!user_name.is_empty()); + assert_ne!(user_name, ""); let file1 = "test_chown_file1"; at.touch(file1); @@ -174,7 +174,7 @@ fn test_chown_dot_separator_warning() { return; } let user_name = String::from(result.stdout_str().trim()); - assert!(!user_name.is_empty()); + assert_ne!(user_name, ""); let file1 = "test_chown_dot_warn"; at.touch(file1); @@ -184,7 +184,7 @@ fn test_chown_dot_separator_warning() { return; } let group_name = String::from(result.stdout_str().trim()); - assert!(!group_name.is_empty()); + assert_ne!(group_name, ""); // chown user. file should warn about '.' separator scene @@ -292,7 +292,7 @@ fn test_chown_owner_group() { } let user_name = String::from(result.stdout_str().trim()); - assert!(!user_name.is_empty()); + assert_ne!(user_name, ""); let file1 = "test_chown_file1"; at.touch(file1); @@ -302,7 +302,7 @@ fn test_chown_owner_group() { return; } let group_name = String::from(result.stdout_str().trim()); - assert!(!group_name.is_empty()); + assert_ne!(group_name, ""); let result = scene .ucmd() @@ -354,7 +354,7 @@ fn test_chown_various_input() { } let user_name = String::from(result.stdout_str().trim()); - assert!(!user_name.is_empty()); + assert_ne!(user_name, ""); let file1 = "test_chown_file1"; at.touch(file1); @@ -364,7 +364,7 @@ fn test_chown_various_input() { return; } let group_name = String::from(result.stdout_str().trim()); - assert!(!group_name.is_empty()); + assert_ne!(group_name, ""); let result = scene .ucmd() @@ -413,7 +413,7 @@ fn test_chown_only_group() { return; } let group_name = String::from(result.stdout_str().trim()); - assert!(!group_name.is_empty()); + assert_ne!(group_name, ""); let file1 = "test_chown_file1"; at.touch(file1); @@ -451,7 +451,7 @@ fn test_chown_only_user_id() { return; } let user_id = String::from(result.stdout_str().trim()); - assert!(!user_id.is_empty()); + assert_ne!(user_id, ""); let file1 = "test_chown_file1"; at.touch(file1); @@ -485,7 +485,7 @@ fn test_chown_fail_id() { return; } let user_id = String::from(result.stdout_str().trim()); - assert!(!user_id.is_empty()); + assert_ne!(user_id, ""); let file1 = "test_chown_file1"; at.touch(file1); @@ -541,7 +541,7 @@ fn test_chown_only_group_id() { return; } let group_id = String::from(result.stdout_str().trim()); - assert!(!group_id.is_empty()); + assert_ne!(group_id, ""); let file1 = "test_chown_file1"; at.touch(file1); @@ -609,14 +609,14 @@ fn test_chown_owner_group_id() { return; } let user_id = String::from(result.stdout_str().trim()); - assert!(!user_id.is_empty()); + assert_ne!(user_id, ""); let result = scene.cmd("id").arg("-g").run(); if skipping_test_is_okay(&result, "id: cannot find name for group ID") { return; } let group_id = String::from(result.stdout_str().trim()); - assert!(!group_id.is_empty()); + assert_ne!(group_id, ""); let file1 = "test_chown_file1"; at.touch(file1); @@ -669,14 +669,14 @@ fn test_chown_owner_group_mix() { return; } let user_id = String::from(result.stdout_str().trim()); - assert!(!user_id.is_empty()); + assert_ne!(user_id, ""); let result = scene.cmd("id").arg("-gn").run(); if skipping_test_is_okay(&result, "id: cannot find name for group ID") { return; } let group_name = String::from(result.stdout_str().trim()); - assert!(!group_name.is_empty()); + assert_ne!(group_name, ""); let file1 = "test_chown_file1"; at.touch(file1); @@ -708,7 +708,7 @@ fn test_chown_recursive() { return; } let user_name = String::from(result.stdout_str().trim()); - assert!(!user_name.is_empty()); + assert_ne!(user_name, ""); at.mkdir_all("a/b/c"); at.mkdir("z"); @@ -738,7 +738,7 @@ fn test_root_preserve() { return; } let user_name = String::from(result.stdout_str().trim()); - assert!(!user_name.is_empty()); + assert_ne!(user_name, ""); let result = scene .ucmd() @@ -780,7 +780,7 @@ fn test_chown_file_notexisting() { return; } let user_name = String::from(result.stdout_str().trim()); - assert!(!user_name.is_empty()); + assert_ne!(user_name, ""); scene .ucmd() @@ -805,7 +805,7 @@ fn test_chown_no_change_to_user() { return; } let user_name = String::from(result.stdout_str().trim()); - assert!(!user_name.is_empty()); + assert_ne!(user_name, ""); for (i, from) in ["42", ":42", "42:42"].iter().enumerate() { let file = i.to_string(); @@ -832,13 +832,13 @@ fn test_chown_no_change_to_group() { return; } let user_name = String::from(result.stdout_str().trim()); - assert!(!user_name.is_empty()); + assert_ne!(user_name, ""); let result = scene.cmd("id").arg("-ng").run(); if skipping_test_is_okay(&result, "id: cannot find name for group ID") { return; } let group_name = String::from(result.stdout_str().trim()); - assert!(!group_name.is_empty()); + assert_ne!(group_name, ""); for (i, from) in ["42", ":42", "42:42"].iter().enumerate() { let file = i.to_string(); @@ -865,13 +865,13 @@ fn test_chown_no_change_to_user_group() { return; } let user_name = String::from(result.stdout_str().trim()); - assert!(!user_name.is_empty()); + assert_ne!(user_name, ""); let result = scene.cmd("id").arg("-ng").run(); if skipping_test_is_okay(&result, "id: cannot find name for group ID") { return; } let group_name = String::from(result.stdout_str().trim()); - assert!(!group_name.is_empty()); + assert_ne!(group_name, ""); for (i, from) in ["42", ":42", "42:42"].iter().enumerate() { let file = i.to_string(); @@ -914,7 +914,7 @@ fn test_chown_no_dereference_symlink_to_dir() { return; } let user_name = String::from(result.stdout_str().trim()); - assert!(!user_name.is_empty()); + assert_ne!(user_name, ""); at.mkdir("dir"); at.symlink_dir("dir", "link_to_dir"); @@ -958,7 +958,7 @@ fn test_chown_symlink_cycles() { return; } let user_name = String::from(result.stdout_str().trim()); - assert!(!user_name.is_empty()); + assert_ne!(user_name, ""); at.mkdir_all("a/b/c"); at.symlink_dir("a", "a/b/c/d"); @@ -1006,7 +1006,7 @@ fn test_chown_symlink_two_links_same_dir() { return; } let user_name = String::from(result.stdout_str().trim()); - assert!(!user_name.is_empty()); + assert_ne!(user_name, ""); // cSpell:disable at.mkdir_all("base/realdir"); diff --git a/tests/by-util/test_dd.rs b/tests/by-util/test_dd.rs index 943fdd4feaa..01406b8f7ae 100644 --- a/tests/by-util/test_dd.rs +++ b/tests/by-util/test_dd.rs @@ -2181,7 +2181,7 @@ fn test_locale_aware_case_conversion() { } else { println!("Turkish locale not available, using fallback behavior"); // Test that it at least doesn't crash and produces some output - assert!(!result.stdout().is_empty()); + assert_ne!(result.stdout(), []); } } @@ -2206,7 +2206,7 @@ fn test_french_locale_case_conversion() { } else { println!("French locale not available, using fallback behavior"); // Test that it at least doesn't crash and produces some output - assert!(!result.stdout().is_empty()); + assert_ne!(result.stdout(), []); } // Test reverse conversion: à (0xE0) should convert to À (0xC0) with ucase @@ -2222,7 +2222,7 @@ fn test_french_locale_case_conversion() { println!("French locale case conversion working correctly for à -> À"); } else { println!("French locale not available for reverse conversion, using fallback behavior"); - assert!(!result.stdout().is_empty()); + assert_ne!(result.stdout(), []); } // Test another French character: Ç (0xC7) should convert to ç (0xE7) with lcase @@ -2238,7 +2238,7 @@ fn test_french_locale_case_conversion() { println!("French locale case conversion working correctly for Ç -> ç"); } else { println!("French locale not available for Ç conversion, using fallback behavior"); - assert!(!result.stdout().is_empty()); + assert_ne!(result.stdout(), []); } } diff --git a/tests/by-util/test_dirname.rs b/tests/by-util/test_dirname.rs index 7c5684f17df..67c8b13e5b3 100644 --- a/tests/by-util/test_dirname.rs +++ b/tests/by-util/test_dirname.rs @@ -83,7 +83,7 @@ fn test_dirname_non_utf8_paths() { let result = new_ucmd!().arg(non_utf8_name).succeeds(); let output = result.stdout_str_lossy(); - assert!(!output.is_empty()); + assert_ne!(output, ""); assert!(output.contains("test_")); } @@ -189,7 +189,7 @@ fn test_trailing_dot_non_utf8() { let result = new_ucmd!().arg(non_utf8_path).succeeds(); let output = result.stdout_str_lossy(); - assert!(!output.is_empty()); + assert_ne!(output, ""); assert!(output.contains("test_")); assert!(!output.trim().ends_with('.')); } diff --git a/tests/by-util/test_du.rs b/tests/by-util/test_du.rs index 470382848fe..51246937e3d 100644 --- a/tests/by-util/test_du.rs +++ b/tests/by-util/test_du.rs @@ -2227,10 +2227,10 @@ fn test_du_safe_traversal_with_symlinks() { at.symlink_file(&format!("{deep_path}/target.txt"), "shallow_link.txt"); let result = ts.ucmd().arg("-L").arg("shallow_link.txt").succeeds(); - assert!(!result.stdout_str().is_empty()); + assert_ne!(result.stdout_str(), ""); let result = ts.ucmd().arg("shallow_link.txt").succeeds(); - assert!(!result.stdout_str().is_empty()); + assert_ne!(result.stdout_str(), ""); } #[test] #[cfg(unix)] diff --git a/tests/by-util/test_echo.rs b/tests/by-util/test_echo.rs index 860b7250f8d..90a4d67cc78 100644 --- a/tests/by-util/test_echo.rs +++ b/tests/by-util/test_echo.rs @@ -783,17 +783,17 @@ fn test_uchild_when_run_no_wait_with_a_non_blocking_util() { // check the current output is correct std::assert_eq!(child.stdout(), "hello world\n"); - assert!(child.stderr().is_empty()); + assert_eq!(child.stderr(), ""); // check the current output of echo is empty. We already called `child.stdout()` and `echo` // exited so there's no additional output after the first call of `child.stdout()` - assert!(child.stdout().is_empty()); - assert!(child.stderr().is_empty()); + assert_eq!(child.stdout(), ""); + assert_eq!(child.stderr(), ""); // check that we're still able to access all output of the child process, even after exit // and call to `child.stdout()` std::assert_eq!(child.stdout_all(), "hello world\n"); - assert!(child.stderr_all().is_empty()); + assert_eq!(child.stderr_all(), ""); // we should be able to call kill without panics, even if the process already exited child.make_assertion().is_not_alive(); diff --git a/tests/by-util/test_hostname.rs b/tests/by-util/test_hostname.rs index ffc90937aff..341437807a8 100644 --- a/tests/by-util/test_hostname.rs +++ b/tests/by-util/test_hostname.rs @@ -17,13 +17,13 @@ fn test_hostname() { #[test] fn test_hostname_ip() { let result = new_ucmd!().arg("-i").succeeds(); - assert!(!result.stdout_str().trim().is_empty()); + assert_ne!(result.stdout_str().trim(), ""); } #[test] fn test_hostname_full() { let ls_short_res = new_ucmd!().arg("-s").succeeds(); - assert!(!ls_short_res.stdout_str().trim().is_empty()); + assert_ne!(ls_short_res.stdout_str().trim(), ""); new_ucmd!() .arg("-f") @@ -44,7 +44,7 @@ fn test_hostname_domain_empty() { let domain_short = new_ucmd!().arg("-sd").succeeds(); if fqdn.stdout() == short.stdout() { - assert!(domain.stdout().is_empty()); - assert!(domain_short.stdout().is_empty()); + assert_eq!(domain.stdout(), []); + assert_eq!(domain_short.stdout(), []); } } diff --git a/tests/by-util/test_id.rs b/tests/by-util/test_id.rs index 30e4c1ac9a0..71b6d89f3ec 100644 --- a/tests/by-util/test_id.rs +++ b/tests/by-util/test_id.rs @@ -161,7 +161,7 @@ fn test_id_groups_ordering() { let groups = ts.ucmd().arg("-G").succeeds().stdout_move_str(); let mut from_flag: Vec<&str> = groups.split_whitespace().collect(); - assert!(!from_flag.is_empty()); + assert_ne!(from_flag, [] as [&str; 0]); // `-G` heads with the real gid let rgid = ts.ucmd().args(&["-g", "-r"]).succeeds().stdout_move_str(); diff --git a/tests/by-util/test_ln.rs b/tests/by-util/test_ln.rs index 986b373e9bc..4c2cbba6460 100644 --- a/tests/by-util/test_ln.rs +++ b/tests/by-util/test_ln.rs @@ -466,12 +466,11 @@ fn test_symlink_overwrite_dir_fail() { at.touch(path_a); at.mkdir(path_b); - assert!( - !ucmd - .args(&["-s", "-T", path_a, path_b]) + assert_ne!( + ucmd.args(&["-s", "-T", path_a, path_b]) .fails() - .stderr_str() - .is_empty() + .stderr_str(), + "" ); } @@ -522,13 +521,7 @@ fn test_symlink_target_only() { at.mkdir(dir); - assert!( - !ucmd - .args(&["-s", "-t", dir]) - .fails() - .stderr_str() - .is_empty() - ); + assert_ne!(ucmd.args(&["-s", "-t", dir]).fails().stderr_str(), ""); } #[test] diff --git a/tests/by-util/test_logname.rs b/tests/by-util/test_logname.rs index 52ac49a0a2d..caccf3b2a63 100644 --- a/tests/by-util/test_logname.rs +++ b/tests/by-util/test_logname.rs @@ -28,7 +28,7 @@ fn test_normal() { } result.success(); - assert!(!result.stdout_str().trim().is_empty()); + assert_ne!(result.stdout_str().trim(), ""); } #[test] diff --git a/tests/by-util/test_mv.rs b/tests/by-util/test_mv.rs index 7dfd5530507..a860ef7c270 100644 --- a/tests/by-util/test_mv.rs +++ b/tests/by-util/test_mv.rs @@ -1688,16 +1688,16 @@ fn test_mv_interactive_error() { // $ at.mkdir dir && at.touch file // $ mv -i dir file // err == mv: cannot overwrite non-directory 'file' with directory 'dir' - assert!( - !scene + assert_ne!( + scene .ucmd() .arg("-i") .arg(dir) .arg(file_a) .pipe_in("y") .fails() - .stderr_str() - .is_empty() + .stderr_str(), + "" ); } diff --git a/tests/by-util/test_pwd.rs b/tests/by-util/test_pwd.rs index a6e1bd798bb..d79cc1a7d20 100644 --- a/tests/by-util/test_pwd.rs +++ b/tests/by-util/test_pwd.rs @@ -51,7 +51,7 @@ fn test_deleted_dir() { .output() .unwrap(); assert!(!output.status.success()); - assert!(output.stdout.is_empty()); + assert_eq!(output.stdout, [] as [_; 0]); assert_eq!( String::from_utf8_lossy(&output.stderr), "pwd: failed to get current directory: No such file or directory\n" diff --git a/tests/by-util/test_stat.rs b/tests/by-util/test_stat.rs index ab51bcab5c7..7e4c9e1e005 100644 --- a/tests/by-util/test_stat.rs +++ b/tests/by-util/test_stat.rs @@ -96,7 +96,7 @@ fn test_terse_normal_format() { println!("expect: {expect:?}"); let v_actual: Vec<&str> = actual.trim().split(' ').collect(); let mut v_expect: Vec<&str> = expect.trim().split(' ').collect(); - assert!(!v_expect.is_empty()); + assert_ne!(v_expect, [] as [&str; 0]); // uu_stat does not support selinux if v_actual.len() == v_expect.len() - 1 && v_expect[v_expect.len() - 1].contains(':') { @@ -128,7 +128,7 @@ fn test_format_created_time() { let re = regex::Regex::new(r"\s").unwrap(); let v_actual: Vec<&str> = re.split(&actual).collect(); let v_expect: Vec<&str> = re.split(&expect).collect(); - assert!(!v_expect.is_empty()); + assert_ne!(v_expect, [] as [&str; 0]); // * allow for inequality if `stat` (aka, expect) returns "-" (unknown value) assert!( expect == "-" @@ -153,7 +153,7 @@ fn test_format_created_seconds() { let re = regex::Regex::new(r"\s").unwrap(); let v_actual: Vec<&str> = re.split(&actual).collect(); let v_expect: Vec<&str> = re.split(&expect).collect(); - assert!(!v_expect.is_empty()); + assert_ne!(v_expect, [] as [&str; 0]); // * allow for inequality if `stat` (aka, expect) returns "0" (unknown value) assert!( expect == "0" diff --git a/tests/by-util/test_tee.rs b/tests/by-util/test_tee.rs index 4de4bc84022..867d6d29b8b 100644 --- a/tests/by-util/test_tee.rs +++ b/tests/by-util/test_tee.rs @@ -776,5 +776,5 @@ fn test_write_failure_reports_error_and_nonzero_exit() { let result = ucmd.arg("out_dir").pipe_in("data").fails(); - assert!(!result.stderr_str().is_empty()); + assert_ne!(result.stderr_str(), ""); } diff --git a/tests/by-util/test_truncate.rs b/tests/by-util/test_truncate.rs index 97e7b2b5f05..c5a76f86728 100644 --- a/tests/by-util/test_truncate.rs +++ b/tests/by-util/test_truncate.rs @@ -470,7 +470,7 @@ fn test_underflow_relative_size() { let (at, mut ucmd) = at_and_ucmd!(); ucmd.args(&["-s-1", FILE1]).succeeds().no_output(); assert!(at.file_exists(FILE1)); - assert!(at.read_bytes(FILE1).is_empty()); + assert_eq!(at.read_bytes(FILE1), [] as [_; 0]); } #[test] @@ -478,7 +478,7 @@ fn test_negative_size_with_space() { let (at, mut ucmd) = at_and_ucmd!(); ucmd.args(&["-s", "-1", FILE1]).succeeds().no_output(); assert!(at.file_exists(FILE1)); - assert!(at.read_bytes(FILE1).is_empty()); + assert_eq!(at.read_bytes(FILE1), [] as [_; 0]); } #[cfg(not(windows))] diff --git a/tests/uutests/src/lib/util.rs b/tests/uutests/src/lib/util.rs index 5559a654aad..535b459d27c 100644 --- a/tests/uutests/src/lib/util.rs +++ b/tests/uutests/src/lib/util.rs @@ -3289,6 +3289,7 @@ pub fn run_ucmd_as_root_with_stdin_stdout( mod tests { // spell-checker:ignore (tests) asdfsadfa use super::*; + use pretty_assertions::assert_eq; // Create a init for the test with a fake value (not needed) #[cfg(test)] @@ -3322,8 +3323,8 @@ mod tests { assert!(!result.succeeded()); result.failure(); result.fails_silently(); - assert!(result.stderr.is_empty()); - assert!(result.stdout.is_empty()); + assert_eq!(result.stderr, [] as [_; 0]); + assert_eq!(result.stdout, [] as [_; 0]); result.no_output(); result.no_stderr(); result.no_stdout(); @@ -3344,8 +3345,8 @@ mod tests { result.code_is(0); assert!(result.succeeded()); result.success(); - assert!(result.stderr.is_empty()); - assert!(result.stdout.is_empty()); + assert_eq!(result.stderr, [] as [_; 0]); + assert_eq!(result.stdout, [] as [_; 0]); result.no_output(); result.no_stderr(); result.no_stdout(); @@ -3383,7 +3384,7 @@ mod tests { result.code_is(0); assert!(result.succeeded()); result.success(); - assert!(result.stderr.is_empty()); + assert_eq!(result.stderr, [] as [_; 0]); std::assert_eq!(result.stdout, vector); result.no_stderr(); result.stdout_is(string); @@ -3412,7 +3413,7 @@ mod tests { result.code_is(0); assert!(result.succeeded()); result.success(); - assert!(result.stdout.is_empty()); + assert_eq!(result.stdout, [] as [_; 0]); result.no_stdout(); std::assert_eq!(result.stderr, vector); result.stderr_is(string);