Add helper function to get stderr of a command
But also get back the Assert object, which can then be used to check whether the command succeeded or failed. Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
This commit is contained in:
parent
0c685fde73
commit
485ad3815f
1 changed files with 14 additions and 0 deletions
|
@ -22,6 +22,7 @@ use std::path::PathBuf;
|
|||
|
||||
use assert_fs::fixture::TempDir;
|
||||
use assert_cmd::prelude::*;
|
||||
use assert_cmd::assert::Assert;
|
||||
|
||||
pub fn make_temphome() -> TempDir {
|
||||
TempDir::new().unwrap().persist_if(std::env::var("IMAG_UI_TEST_PERSIST").is_ok())
|
||||
|
@ -53,6 +54,19 @@ pub fn stdout_of_command(mut command: Command) -> Vec<String> {
|
|||
lines
|
||||
}
|
||||
|
||||
/// Run the passed command and get the stderr of it.
|
||||
///
|
||||
/// This function does _not_ ensure that stdin is inherited.
|
||||
pub fn stderr_of_command(command: &mut Command) -> (Assert, Vec<String>) {
|
||||
let assert = command.assert();
|
||||
let lines = String::from_utf8(assert.get_output().stderr.clone())
|
||||
.unwrap()
|
||||
.lines()
|
||||
.map(String::from)
|
||||
.collect();
|
||||
(assert, lines)
|
||||
}
|
||||
|
||||
/// Create a PathBuf for a file in a TempDir
|
||||
pub fn file_path(tempdir: &TempDir, path_elements: &[&str]) -> PathBuf {
|
||||
create_path_for(tempdir.path().to_path_buf(), path_elements)
|
||||
|
|
Loading…
Reference in a new issue