rustcoreutils / posixutils-rs

Core POSIX command line utilities in safe Rust
MIT License
330 stars 25 forks source link

chgrp tests fail on Ubuntu Linux #377

Open jgarzik opened 3 hours ago

jgarzik commented 3 hours ago

Platform:

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 22.04.5 LTS
Release:    22.04
Codename:   jammy

Test failures:


running 118 tests
test cp::test_cp_childproof ... ok
test cp::test_cp_deref ... ok
test cp::test_cp_dir_slash ... ok
test cp::test_cp_dir_vs_file ... ok
test cp::test_cp_hl ... ok
test cp::test_cp_fail_perm ... ok
test cp::test_cp_i_2 ... ok
test cp::test_cp_into_self ... ok
test cp::test_cp_issue199 ... ok
test chgrp::test_chgrp_deref ... FAILED
test chgrp::test_chgrp_default_no_deref ... FAILED
test chgrp::test_chgrp_no_x ... FAILED
test chgrp::test_chgrp_recurse ... FAILED
test chgrp::test_chgrp_posix_h ... FAILED
test cp::test_cp_special_bits ... ignored
test chgrp::test_chgrp_basic ... FAILED
test cp::test_cp_i ... ok
test cp::test_cp_thru_dangling ... ok
test cp::test_cp_trailing_slash ... ok
test link::link_already_exists ... ok
test cp::test_cp_special_f ... ok
test cp::test_cp_r_vs_symlink ... ok
test link::link_create ... ok
test cp::test_cp_part_symlink ... ok
test ls::test_ls_empty_directory ... ok
test ls::test_ls_infloop ... ok
test ls::test_ls_file_type ... ok
test ls::test_ls_no_arg ... ok
test ls::test_ls_recursive ... ok
test cp::test_cp_proc_short_read ... ok
test ls::test_ls_m_option ... ok
test ls::test_ls_dangle ... ok
test ls::test_ls_rt_1 ... ok
test mkdir::test_directory_already_exists ... ok
test mkdir::test_create_single_directory ... ok
test cp::test_cp_same_file ... ok
test ls::test_ls_size_align ... ok
test mkdir::test_invalid_mode ... ok
test mkdir::test_set_directory_mode ... ok
test mv::test_mv_atomic2 ... ok
test mv::test_mv_atomic ... ok
test mv::test_mv_dir2dir ... ok
test mv::test_mv_dir_file ... ok
test ls::test_ls_inode ... ok
test mv::test_mv_force ... ok
test mv::test_mv_hardlink_case ... ignored
test mv::test_mv_hard_2 ... ok
test mv::test_mv_dup_source ... ok
test mv::test_mv_childproof ... ok
test mv::test_mv_hard_4 ... ok
test mv::test_mv_i_link_no ... ignored
test mv::test_mv_hard_link_1 ... ok
test mv::test_mv_into_self ... ok
test mv::test_mv_into_self_2 ... ok
test mv::test_mv_into_self_3 ... ok
test mv::test_mv_into_self_4 ... ok
test mv::test_mv_i_1 ... ok
test mv::test_mv_i_5 ... ok
test mv::test_mv_part_fail ... ok
test mv::test_mv_i_2 ... ok
test mv::test_mv_partition_perm ... ok
test mv::test_mv_part_hardlink ... ok
test mv::test_mv_perm_1 ... ok
test mv::test_mv_sticky_to_xpart ... ignored
test mv::test_mv_special ... ok
test mv::test_mv_i_4 ... ok
test mv::test_mv_part_symlink ... ok
test mv::test_mv_part_rename ... ok
test mv::test_mv_symlink_onto_hardlink_to_self ... ok
test mv::test_mv_symlink_onto_hardlink ... ok
test mv::test_mv_to_symlink ... ok
test readlink::test_readlink_non_existent_file ... ok
test readlink::test_readlink_not_a_symlink ... ok
test mv::test_mv_trailing_slash ... ok
test readlink::test_readlink_valid_symlink ... ok
test readlink::test_readlink_valid_symlink_no_newline ... ok
test rm::test_rm_dir_no_w ... ok
test rm::test_rm_dir_nonrecur ... ok
test rm::test_rm_cycle ... ok
test rm::test_rm_dot_rel ... ok
test rm::test_rm_empty_name ... ok
test rm::test_rm_fail_2eperm ... ignored
test rm::test_rm_f_1 ... ok
test rm::test_rm_empty_inacc ... ok
test rm::test_rm_fail_eacces ... ok
test rm::test_rm_dangling_symlink ... ok
test rm::test_rm_i_no_r ... ok
test rm::test_rm_ignorable ... ok
test rm::test_rm_i_1 ... ok
test rm::test_rm_inaccessible ... ok
test rm::test_rm_no_give_up ... ignored
test rm::test_rm_ir_1 ... ok
test rm::test_rm_r_4 ... ok
test rm::test_rm_r_3 ... ok
test rm::test_rm_readdir_bug ... ok
test rm::test_rm_rm1 ... ok
test rm::test_rm_rm2 ... ok
test rm::test_rm_r_root ... ok
test rm::test_rm_rm4 ... ok
test rm::test_rm_rm3 ... ok
test rm::test_rm_sunos_1 ... ok
test rm::test_rm_rm5 ... ok
test rm::test_rm_unread2 ... ok
test rm::test_rm_unreadable ... ok
test rmdir::rmdir_remove_directory_with_parents ... ok
test rmdir::rmdir_remove_existing_directory ... ok
test rm::test_rm_unread3 ... ok
test rmdir::rmdir_remove_non_existent_directory ... ok
test rmdir::rmdir_remove_non_empty_directory ... ok
test unlink::unlink_remove_directory ... ok
test unlink::unlink_remove_existing_file ... ok
test unlink::unlink_remove_non_existing_file ... ok
test rm::test_rm_deep_2 ... ok
test ls::test_ls_time ... ok
test mv::test_mv_leak_fd ... ok
test rm::test_rm_hash ... ok
test cp::test_cp_preserve_slink_time ... ok
test rm::test_rm_isatty ... ok

failures:

---- chgrp::test_chgrp_deref stdout ----
thread 'chgrp::test_chgrp_deref' panicked at plib/src/testing.rs:88:5:
assertion `left == right` failed
  left: "chgrp: cannot access '/home/jgarzik/repo/posixutils-rs/target/tmp/test_chgrp_deref/symlink': Operation not permitted\n"
 right: ""
stack backtrace:
   0: rust_begin_unwind
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/panicking.rs:665:5
   1: core::panicking::panic_fmt
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panicking.rs:74:14
   2: core::panicking::assert_failed_inner
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panicking.rs:410:17
   3: core::panicking::assert_failed
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panicking.rs:365:5
   4: plib::testing::run_test
             at /home/jgarzik/repo/posixutils-rs/plib/src/testing.rs:88:5
   5: tree_tests::chgrp::chgrp_test
             at ./tests/chgrp/mod.rs:26:5
   6: tree_tests::chgrp::test_chgrp_deref
             at ./tests/chgrp/mod.rs:299:5
   7: tree_tests::chgrp::test_chgrp_deref::{{closure}}
             at ./tests/chgrp/mod.rs:285:22
   8: core::ops::function::FnOnce::call_once
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/ops/function.rs:250:5
   9: core::ops::function::FnOnce::call_once
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/ops/function.rs:250:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

---- chgrp::test_chgrp_default_no_deref stdout ----
thread 'chgrp::test_chgrp_default_no_deref' panicked at plib/src/testing.rs:88:5:
assertion `left == right` failed
  left: "chgrp: cannot access '/home/jgarzik/repo/posixutils-rs/target/tmp/test_chgrp_default_no_deref/d': Operation not permitted\n"
 right: ""
stack backtrace:
   0: rust_begin_unwind
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/panicking.rs:665:5
   1: core::panicking::panic_fmt
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panicking.rs:74:14
   2: core::panicking::assert_failed_inner
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panicking.rs:410:17
   3: core::panicking::assert_failed
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panicking.rs:365:5
   4: plib::testing::run_test
             at /home/jgarzik/repo/posixutils-rs/plib/src/testing.rs:88:5
   5: tree_tests::chgrp::chgrp_test
             at ./tests/chgrp/mod.rs:26:5
   6: tree_tests::chgrp::test_chgrp_default_no_deref
             at ./tests/chgrp/mod.rs:274:5
   7: tree_tests::chgrp::test_chgrp_default_no_deref::{{closure}}
             at ./tests/chgrp/mod.rs:251:33
   8: core::ops::function::FnOnce::call_once
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/ops/function.rs:250:5
   9: core::ops::function::FnOnce::call_once
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/ops/function.rs:250:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

---- chgrp::test_chgrp_no_x stdout ----
thread 'chgrp::test_chgrp_no_x' panicked at plib/src/testing.rs:88:5:
assertion `left == right` failed
  left: "chgrp: cannot access '/home/jgarzik/repo/posixutils-rs/target/tmp/test_chgrp_no_x/d': Operation not permitted\n"
 right: "chgrp: cannot read directory '/home/jgarzik/repo/posixutils-rs/target/tmp/test_chgrp_no_x/d/no-x': Permission denied\n"
stack backtrace:
   0: rust_begin_unwind
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/panicking.rs:665:5
   1: core::panicking::panic_fmt
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panicking.rs:74:14
   2: core::panicking::assert_failed_inner
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panicking.rs:410:17
   3: core::panicking::assert_failed
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panicking.rs:365:5
   4: plib::testing::run_test
             at /home/jgarzik/repo/posixutils-rs/plib/src/testing.rs:88:5
   5: tree_tests::chgrp::chgrp_test
             at ./tests/chgrp/mod.rs:26:5
   6: tree_tests::chgrp::test_chgrp_no_x
             at ./tests/chgrp/mod.rs:348:5
   7: tree_tests::chgrp::test_chgrp_no_x::{{closure}}
             at ./tests/chgrp/mod.rs:325:21
   8: core::ops::function::FnOnce::call_once
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/ops/function.rs:250:5
   9: core::ops::function::FnOnce::call_once
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/ops/function.rs:250:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

---- chgrp::test_chgrp_recurse stdout ----
thread 'chgrp::test_chgrp_recurse' panicked at plib/src/testing.rs:88:5:
assertion `left == right` failed
  left: "chgrp: cannot access '/home/jgarzik/repo/posixutils-rs/target/tmp/test_chgrp_recurse/d': Operation not permitted\n"
 right: ""
stack backtrace:
   0: rust_begin_unwind
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/panicking.rs:665:5
   1: core::panicking::panic_fmt
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panicking.rs:74:14
   2: core::panicking::assert_failed_inner
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panicking.rs:410:17
   3: core::panicking::assert_failed
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panicking.rs:365:5
   4: plib::testing::run_test
             at /home/jgarzik/repo/posixutils-rs/plib/src/testing.rs:88:5
   5: tree_tests::chgrp::chgrp_test
             at ./tests/chgrp/mod.rs:26:5
   6: tree_tests::chgrp::test_chgrp_recurse
             at ./tests/chgrp/mod.rs:430:5
   7: tree_tests::chgrp::test_chgrp_recurse::{{closure}}
             at ./tests/chgrp/mod.rs:406:24
   8: core::ops::function::FnOnce::call_once
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/ops/function.rs:250:5
   9: core::ops::function::FnOnce::call_once
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/ops/function.rs:250:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

---- chgrp::test_chgrp_posix_h stdout ----
thread 'chgrp::test_chgrp_posix_h' panicked at plib/src/testing.rs:88:5:
assertion `left == right` failed
  left: "chgrp: cannot access '/home/jgarzik/repo/posixutils-rs/target/tmp/test_chgrp_posix_h/1s': Operation not permitted\nchgrp: cannot access '/home/jgarzik/repo/posixutils-rs/target/tmp/test_chgrp_posix_h/2': Operation not permitted\n"
 right: ""
stack backtrace:
   0: rust_begin_unwind
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/panicking.rs:665:5
   1: core::panicking::panic_fmt
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panicking.rs:74:14
   2: core::panicking::assert_failed_inner
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panicking.rs:410:17
   3: core::panicking::assert_failed
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panicking.rs:365:5
   4: plib::testing::run_test
             at /home/jgarzik/repo/posixutils-rs/plib/src/testing.rs:88:5
   5: tree_tests::chgrp::chgrp_test
             at ./tests/chgrp/mod.rs:26:5
   6: tree_tests::chgrp::test_chgrp_posix_h
             at ./tests/chgrp/mod.rs:391:5
   7: tree_tests::chgrp::test_chgrp_posix_h::{{closure}}
             at ./tests/chgrp/mod.rs:364:24
   8: core::ops::function::FnOnce::call_once
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/ops/function.rs:250:5
   9: core::ops::function::FnOnce::call_once
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/ops/function.rs:250:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

---- chgrp::test_chgrp_basic stdout ----
thread 'chgrp::test_chgrp_basic' panicked at plib/src/testing.rs:88:5:
assertion `left == right` failed
  left: "chgrp: cannot access '/home/jgarzik/repo/posixutils-rs/target/tmp/test_chgrp_basic/f': Operation not permitted\n"
 right: ""
stack backtrace:
   0: rust_begin_unwind
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/std/src/panicking.rs:665:5
   1: core::panicking::panic_fmt
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panicking.rs:74:14
   2: core::panicking::assert_failed_inner
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panicking.rs:410:17
   3: core::panicking::assert_failed
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/panicking.rs:365:5
   4: plib::testing::run_test
             at /home/jgarzik/repo/posixutils-rs/plib/src/testing.rs:88:5
   5: tree_tests::chgrp::chgrp_test
             at ./tests/chgrp/mod.rs:26:5
   6: tree_tests::chgrp::test_chgrp_basic
             at ./tests/chgrp/mod.rs:134:5
   7: tree_tests::chgrp::test_chgrp_basic::{{closure}}
             at ./tests/chgrp/mod.rs:112:22
   8: core::ops::function::FnOnce::call_once
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/ops/function.rs:250:5
   9: core::ops::function::FnOnce::call_once
             at /rustc/eeb90cda1969383f56a2637cbd3037bdf598841c/library/core/src/ops/function.rs:250:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

failures:
    chgrp::test_chgrp_basic
    chgrp::test_chgrp_default_no_deref
    chgrp::test_chgrp_deref
    chgrp::test_chgrp_no_x
    chgrp::test_chgrp_posix_h
    chgrp::test_chgrp_recurse

test result: FAILED. 106 passed; 6 failed; 6 ignored; 0 measured; 0 filtered out; finished in 3.16s

error: test failed, to rerun pass `-p posixutils-tree --test tree-tests`
jgarzik commented 3 hours ago

cc @JRF63