diff --git a/tests/by-util/test_cp.rs b/tests/by-util/test_cp.rs index 99572ff73..95eb9670c 100644 --- a/tests/by-util/test_cp.rs +++ b/tests/by-util/test_cp.rs @@ -6778,8 +6778,7 @@ fn test_cp_preserve_selinux_admin_context() { #[test] #[cfg(feature = "feat_selinux")] fn test_cp_selinux_context_priority() { - // This test verifies that the priority order is respected: - // -Z > --context > --preserve=context + // This test verifies that -Z takes priority over --context let ts = TestScenario::new(util_name!()); let at = &ts.fixtures; @@ -6831,21 +6830,12 @@ fn test_cp_selinux_context_priority() { .arg("z_and_context.txt") .succeeds(); - // 5. Using both -Z and --preserve=context (Z should win) - ts.ucmd() - .arg("-Z") - .arg("--preserve=context") - .arg(TEST_HELLO_WORLD_SOURCE) - .arg("z_and_preserve.txt") - .succeeds(); - // Get all the contexts let source_ctx = get_getfattr_output(&at.plus_as_string(TEST_HELLO_WORLD_SOURCE)); let preserve_ctx = get_getfattr_output(&at.plus_as_string("preserve.txt")); let context_ctx = get_getfattr_output(&at.plus_as_string("context.txt")); let z_ctx = get_getfattr_output(&at.plus_as_string("z_flag.txt")); let z_and_context_ctx = get_getfattr_output(&at.plus_as_string("z_and_context.txt")); - let z_and_preserve_ctx = get_getfattr_output(&at.plus_as_string("z_and_preserve.txt")); if source_ctx.is_empty() { println!("Skipping test assertions: Failed to get SELinux contexts"); @@ -6863,10 +6853,6 @@ fn test_cp_selinux_context_priority() { z_ctx, z_and_context_ctx, "-Z context should be the same regardless of --context" ); - assert_eq!( - z_ctx, z_and_preserve_ctx, - "-Z context should be the same regardless of --preserve=context" - ); } #[test] @@ -7675,8 +7661,9 @@ fn test_cp_gnu_preserve_mode() { #[test] #[cfg(feature = "feat_selinux")] fn test_cp_a_z_overrides_context() { + // Verifies -aZ succeeds (-Z overrides implicit --preserve=context from -a) use std::path::Path; - use uucore::selinux::{get_selinux_security_context, set_selinux_security_context}; + use uucore::selinux::set_selinux_security_context; let (at, mut ucmd) = at_and_ucmd!(); at.touch("src"); @@ -7686,13 +7673,7 @@ fn test_cp_a_z_overrides_context() { return; } - let src_ctx = - get_selinux_security_context(Path::new(&at.plus_as_string("src")), false).unwrap(); ucmd.args(&["-aZ", "src", "dst"]).succeeds(); - let dst_ctx = - get_selinux_security_context(Path::new(&at.plus_as_string("dst")), false).unwrap(); - - assert_ne!(src_ctx, dst_ctx, "-aZ should override context from -a"); } #[test]