Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion tests/by-util/test_cat.rs
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,9 @@ fn test_fifo_symlink() {
}

#[test]
#[cfg(any(target_os = "linux", target_os = "android"))]
// TODO(#7542): Re-enable on Android once we figure out why setting limit is broken.
// #[cfg(any(target_os = "linux", target_os = "android"))]
#[cfg(target_os = "linux")]
fn test_closes_file_descriptors() {
// Each file creates a pipe, which has two file descriptors.
// If they are not closed then five is certainly too many.
Expand Down
6 changes: 4 additions & 2 deletions tests/by-util/test_env.rs
Original file line number Diff line number Diff line change
Expand Up @@ -81,11 +81,13 @@ fn test_env_version() {
}

#[test]
#[cfg(unix)]
fn test_env_permissions() {
// Try to execute `empty` in test fixture, that does not have exec permission.
new_ucmd!()
.arg(".")
.arg("./empty")
.fails_with_code(126)
.stderr_is("env: '.': Permission denied\n");
.stderr_is("env: './empty': Permission denied\n");
}

#[test]
Expand Down
4 changes: 3 additions & 1 deletion tests/by-util/test_sort.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1090,7 +1090,9 @@ fn test_merge_batch_size() {
}

#[test]
#[cfg(any(target_os = "linux", target_os = "android"))]
// TODO(#7542): Re-enable on Android once we figure out why setting limit is broken.
// #[cfg(any(target_os = "linux", target_os = "android"))]
#[cfg(target_os = "linux")]
fn test_merge_batch_size_with_limit() {
use rlimit::Resource;
// Currently need...
Expand Down
4 changes: 3 additions & 1 deletion tests/by-util/test_split.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1627,7 +1627,9 @@ fn test_round_robin() {
}

#[test]
#[cfg(any(target_os = "linux", target_os = "android"))]
// TODO(#7542): Re-enable on Android once we figure out why rlimit is broken.
// #[cfg(any(target_os = "linux", target_os = "android"))]
#[cfg(target_os = "linux")]
fn test_round_robin_limited_file_descriptors() {
new_ucmd!()
.args(&["-n", "r/40", "onehundredlines.txt"])
Expand Down
14 changes: 12 additions & 2 deletions tests/common/util.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1215,6 +1215,17 @@ impl TestScenario {
command
}

/// Returns builder for invoking a command in shell (e.g. sh -c 'cmd').
/// Paths given are treated relative to the environment's unique temporary
/// test directory.
pub fn cmd_shell<S: AsRef<OsStr>>(&self, cmd: S) -> UCommand {
let mut command = UCommand::new();
// Intentionally leave bin_path unset.
command.arg(cmd);
command.temp_dir(self.tmpd.clone());
command
}

/// Returns builder for invoking any uutils command. Paths given are treated
/// relative to the environment's unique temporary test directory.
pub fn ccmd<S: AsRef<str>>(&self, util_name: S) -> UCommand {
Expand Down Expand Up @@ -4052,8 +4063,7 @@ mod tests {
};

let ts = TestScenario::new("util");
ts.cmd("sh")
.args(&["-c", "umask"])
ts.cmd_shell("umask")
.umask(c_umask)
.succeeds()
.stdout_is(expected);
Expand Down
Empty file added tests/fixtures/env/empty
Empty file.
Loading