mirror of
https://github.com/RGBCube/uutils-coreutils
synced 2025-07-27 19:17:43 +00:00
tests: move macros into separate module
This commit is contained in:
parent
bdc1ca7426
commit
89b600628d
3 changed files with 49 additions and 49 deletions
48
tests/common/macros.rs
Executable file
48
tests/common/macros.rs
Executable file
|
@ -0,0 +1,48 @@
|
||||||
|
#[macro_export]
|
||||||
|
macro_rules! assert_empty_stderr(
|
||||||
|
($cond:expr) => (
|
||||||
|
if $cond.stderr.len() > 0 {
|
||||||
|
panic!(format!("stderr: {}", $cond.stderr))
|
||||||
|
}
|
||||||
|
);
|
||||||
|
);
|
||||||
|
|
||||||
|
#[macro_export]
|
||||||
|
macro_rules! assert_empty_stdout(
|
||||||
|
($cond:expr) => (
|
||||||
|
if $cond.stdout.len() > 0 {
|
||||||
|
panic!(format!("stdout: {}", $cond.stdout))
|
||||||
|
}
|
||||||
|
);
|
||||||
|
);
|
||||||
|
|
||||||
|
#[macro_export]
|
||||||
|
macro_rules! assert_no_error(
|
||||||
|
($cond:expr) => (
|
||||||
|
assert!($cond.success);
|
||||||
|
if $cond.stderr.len() > 0 {
|
||||||
|
panic!(format!("stderr: {}", $cond.stderr))
|
||||||
|
}
|
||||||
|
);
|
||||||
|
);
|
||||||
|
|
||||||
|
#[macro_export]
|
||||||
|
macro_rules! path_concat {
|
||||||
|
($e:expr, ..$n:expr) => {{
|
||||||
|
use std::path::PathBuf;
|
||||||
|
let n = $n;
|
||||||
|
let mut pb = PathBuf::new();
|
||||||
|
for _ in 0..n {
|
||||||
|
pb.push($e);
|
||||||
|
}
|
||||||
|
pb.to_str().unwrap().to_owned()
|
||||||
|
}};
|
||||||
|
($($e:expr),*) => {{
|
||||||
|
use std::path::PathBuf;
|
||||||
|
let mut pb = PathBuf::new();
|
||||||
|
$(
|
||||||
|
pb.push($e);
|
||||||
|
)*
|
||||||
|
pb.to_str().unwrap().to_owned()
|
||||||
|
}};
|
||||||
|
}
|
|
@ -1,2 +1,3 @@
|
||||||
#[macro_use]
|
#[macro_use]
|
||||||
|
pub mod macros;
|
||||||
pub mod util;
|
pub mod util;
|
||||||
|
|
|
@ -30,34 +30,6 @@ static ALREADY_RUN: &'static str = " you have already run this UCommand, if you
|
||||||
testing();";
|
testing();";
|
||||||
static MULTIPLE_STDIN_MEANINGLESS: &'static str = "Ucommand is designed around a typical use case of: provide args and input stream -> spawn process -> block until completion -> return output streams. For verifying that a particular section of the input stream is what causes a particular behavior, use the Command type directly.";
|
static MULTIPLE_STDIN_MEANINGLESS: &'static str = "Ucommand is designed around a typical use case of: provide args and input stream -> spawn process -> block until completion -> return output streams. For verifying that a particular section of the input stream is what causes a particular behavior, use the Command type directly.";
|
||||||
|
|
||||||
#[macro_export]
|
|
||||||
macro_rules! assert_empty_stderr(
|
|
||||||
($cond:expr) => (
|
|
||||||
if $cond.stderr.len() > 0 {
|
|
||||||
panic!(format!("stderr: {}", $cond.stderr))
|
|
||||||
}
|
|
||||||
);
|
|
||||||
);
|
|
||||||
|
|
||||||
#[macro_export]
|
|
||||||
macro_rules! assert_empty_stdout(
|
|
||||||
($cond:expr) => (
|
|
||||||
if $cond.stdout.len() > 0 {
|
|
||||||
panic!(format!("stdout: {}", $cond.stdout))
|
|
||||||
}
|
|
||||||
);
|
|
||||||
);
|
|
||||||
|
|
||||||
#[macro_export]
|
|
||||||
macro_rules! assert_no_error(
|
|
||||||
($cond:expr) => (
|
|
||||||
assert!($cond.success);
|
|
||||||
if $cond.stderr.len() > 0 {
|
|
||||||
panic!(format!("stderr: {}", $cond.stderr))
|
|
||||||
}
|
|
||||||
);
|
|
||||||
);
|
|
||||||
|
|
||||||
pub fn repeat_str(s: &str, n: u32) -> String {
|
pub fn repeat_str(s: &str, n: u32) -> String {
|
||||||
let mut repeated = String::new();
|
let mut repeated = String::new();
|
||||||
for _ in 0..n {
|
for _ in 0..n {
|
||||||
|
@ -66,27 +38,6 @@ pub fn repeat_str(s: &str, n: u32) -> String {
|
||||||
repeated
|
repeated
|
||||||
}
|
}
|
||||||
|
|
||||||
#[macro_export]
|
|
||||||
macro_rules! path_concat {
|
|
||||||
($e:expr, ..$n:expr) => {{
|
|
||||||
use std::path::PathBuf;
|
|
||||||
let n = $n;
|
|
||||||
let mut pb = PathBuf::new();
|
|
||||||
for _ in 0..n {
|
|
||||||
pb.push($e);
|
|
||||||
}
|
|
||||||
pb.to_str().unwrap().to_owned()
|
|
||||||
}};
|
|
||||||
($($e:expr),*) => {{
|
|
||||||
use std::path::PathBuf;
|
|
||||||
let mut pb = PathBuf::new();
|
|
||||||
$(
|
|
||||||
pb.push($e);
|
|
||||||
)*
|
|
||||||
pb.to_str().unwrap().to_owned()
|
|
||||||
}};
|
|
||||||
}
|
|
||||||
|
|
||||||
pub struct CmdResult {
|
pub struct CmdResult {
|
||||||
pub success: bool,
|
pub success: bool,
|
||||||
pub stdout: String,
|
pub stdout: String,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue