2026-09-04 16:46:07 +02:00
|
|
|
// This file is part of the shadow-rs package.
|
|
|
|
|
//
|
|
|
|
|
// For the full copyright and license information, please view the LICENSE
|
|
|
|
|
// file that was distributed with this source code.
|
|
|
|
|
|
|
|
|
|
//! Integration tests for every shadow-rs utility.
|
|
|
|
|
//!
|
|
|
|
|
//! One test binary, not fourteen. Each of the fourteen used to link all
|
|
|
|
|
//! fourteen tool crates and carry its own copy of the helpers through a
|
|
|
|
|
//! `#[path = "../common/mod.rs"]` include; this is the layout the rest of
|
|
|
|
|
//! uutils uses. The `#[path]` attributes are needed only because the
|
|
|
|
|
//! directory name carries a hyphen, which is not a module name.
|
|
|
|
|
|
2026-09-06 05:03:53 -04:00
|
|
|
// The print macros are denied for the tools, where a panic on a closed stream
|
|
|
|
|
// would abandon a half-written account file. In a test a panic is a failed
|
|
|
|
|
// test, which is what one wants, and printing why a test skipped is useful.
|
|
|
|
|
#![allow(clippy::print_stdout, clippy::print_stderr)]
|
|
|
|
|
|
2026-09-04 16:46:07 +02:00
|
|
|
mod common;
|
|
|
|
|
|
|
|
|
|
#[path = "by-util/test_chage.rs"]
|
|
|
|
|
mod test_chage;
|
|
|
|
|
#[path = "by-util/test_chfn.rs"]
|
|
|
|
|
mod test_chfn;
|
2026-09-07 15:40:15 +02:00
|
|
|
#[path = "by-util/test_chgpasswd.rs"]
|
|
|
|
|
mod test_chgpasswd;
|
2026-09-04 16:46:07 +02:00
|
|
|
#[path = "by-util/test_chpasswd.rs"]
|
|
|
|
|
mod test_chpasswd;
|
|
|
|
|
#[path = "by-util/test_chsh.rs"]
|
|
|
|
|
mod test_chsh;
|
2026-09-07 15:47:43 +02:00
|
|
|
#[path = "by-util/test_expiry.rs"]
|
|
|
|
|
mod test_expiry;
|
2026-09-04 16:46:07 +02:00
|
|
|
#[path = "by-util/test_fuzz_corpus.rs"]
|
|
|
|
|
mod test_fuzz_corpus;
|
2026-09-06 05:03:53 -04:00
|
|
|
#[path = "by-util/test_gpasswd.rs"]
|
|
|
|
|
mod test_gpasswd;
|
2026-09-04 16:46:07 +02:00
|
|
|
#[path = "by-util/test_groupadd.rs"]
|
|
|
|
|
mod test_groupadd;
|
|
|
|
|
#[path = "by-util/test_groupdel.rs"]
|
|
|
|
|
mod test_groupdel;
|
|
|
|
|
#[path = "by-util/test_groupmod.rs"]
|
|
|
|
|
mod test_groupmod;
|
|
|
|
|
#[path = "by-util/test_grpck.rs"]
|
|
|
|
|
mod test_grpck;
|
2026-09-07 15:45:29 +02:00
|
|
|
#[path = "by-util/test_login.rs"]
|
|
|
|
|
mod test_login;
|
2026-09-04 16:46:07 +02:00
|
|
|
#[path = "by-util/test_multicall.rs"]
|
|
|
|
|
mod test_multicall;
|
|
|
|
|
#[path = "by-util/test_newgrp.rs"]
|
|
|
|
|
mod test_newgrp;
|
2026-09-07 15:46:36 +02:00
|
|
|
#[path = "by-util/test_newuidmap.rs"]
|
|
|
|
|
mod test_newuidmap;
|
2026-09-07 15:40:59 +02:00
|
|
|
#[path = "by-util/test_newusers.rs"]
|
|
|
|
|
mod test_newusers;
|
2026-09-04 16:46:07 +02:00
|
|
|
#[path = "by-util/test_passwd.rs"]
|
|
|
|
|
mod test_passwd;
|
|
|
|
|
#[path = "by-util/test_pwck.rs"]
|
|
|
|
|
mod test_pwck;
|
2026-09-07 15:43:22 +02:00
|
|
|
#[path = "by-util/test_pwconv.rs"]
|
|
|
|
|
mod test_pwconv;
|
2026-09-07 15:39:24 +02:00
|
|
|
#[path = "by-util/test_sg.rs"]
|
|
|
|
|
mod test_sg;
|
2026-09-04 16:46:07 +02:00
|
|
|
#[path = "by-util/test_useradd.rs"]
|
|
|
|
|
mod test_useradd;
|
|
|
|
|
#[path = "by-util/test_userdel.rs"]
|
|
|
|
|
mod test_userdel;
|
|
|
|
|
#[path = "by-util/test_usermod.rs"]
|
|
|
|
|
mod test_usermod;
|
2026-09-07 15:47:43 +02:00
|
|
|
#[path = "by-util/test_usermod_subid.rs"]
|
|
|
|
|
mod test_usermod_subid;
|
2026-09-07 15:42:20 +02:00
|
|
|
#[path = "by-util/test_vipw.rs"]
|
|
|
|
|
mod test_vipw;
|