You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
43 lines
998 B
43 lines
998 B
use u_lib::{models::JobOutput, utils::vec_to_string}; |
|
|
|
const STDOUT: &str = "<***STDOUT***>"; |
|
const STDERR: &str = "<***STDERR***>"; |
|
|
|
#[test_case( |
|
"lol", |
|
"kek", |
|
&format!("{}lol{}kek", STDOUT, STDERR) |
|
;"stdout stderr" |
|
)] |
|
#[test_case( |
|
"", |
|
"kek", |
|
&format!("{}kek", STDERR) |
|
;"stderr" |
|
)] |
|
fn test_to_combined(stdout: &str, stderr: &str, result: &str) { |
|
let output = JobOutput::new() |
|
.stdout(stdout.as_bytes().to_vec()) |
|
.stderr(stderr.as_bytes().to_vec()); |
|
assert_eq!(&vec_to_string(&output.into_combined()), result) |
|
} |
|
|
|
#[test_case( |
|
&format!("{}lal{}kik", STDOUT, STDERR), |
|
"lal\nkik" |
|
;"stdout stderr" |
|
)] |
|
#[test_case( |
|
&format!("{}qeq", STDOUT), |
|
"qeq" |
|
;"stdout" |
|
)] |
|
#[test_case( |
|
&format!("{}vev", STDERR), |
|
"vev" |
|
;"stderr" |
|
)] |
|
fn test_from_combined(src: &str, result: &str) { |
|
let output = JobOutput::from_combined(src.as_bytes()).unwrap(); |
|
assert_eq!(vec_to_string(&output.to_appropriate()).trim(), result); |
|
}
|
|
|