Merge pull request #2361 from senekor/senekor/mxstspkxoyyp

Improve error messages if tests fail
This commit is contained in:
Mo Bitar 2026-02-26 17:54:22 +01:00 committed by GitHub
commit 75c06bb7f4
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -61,30 +61,32 @@ impl<'a> Cmd<'a> {
cmd.args(self.args).stdin(Stdio::null()); cmd.args(self.args).stdin(Stdio::null());
let status = match self.output { let output = match self.output {
None => cmd None => cmd.output().unwrap(),
.stdout(Stdio::null())
.stderr(Stdio::null())
.status()
.unwrap(),
Some(FullStdout(stdout)) => { Some(FullStdout(stdout)) => {
let output = cmd.stderr(Stdio::null()).output().unwrap(); let output = cmd.stderr(Stdio::null()).output().unwrap();
assert_eq!(from_utf8(&output.stdout).unwrap(), stdout); assert_eq!(from_utf8(&output.stdout).unwrap(), stdout);
output.status output
} }
Some(PartialStdout(stdout)) => { Some(PartialStdout(stdout)) => {
let output = cmd.stderr(Stdio::null()).output().unwrap(); let output = cmd.stderr(Stdio::null()).output().unwrap();
assert!(from_utf8(&output.stdout).unwrap().contains(stdout)); assert!(from_utf8(&output.stdout).unwrap().contains(stdout));
output.status output
} }
Some(PartialStderr(stderr)) => { Some(PartialStderr(stderr)) => {
let output = cmd.stdout(Stdio::null()).output().unwrap(); let output = cmd.stdout(Stdio::null()).output().unwrap();
assert!(from_utf8(&output.stderr).unwrap().contains(stderr)); assert!(from_utf8(&output.stderr).unwrap().contains(stderr));
output.status output
} }
}; };
assert_eq!(status.success(), success, "{cmd:?}"); assert_eq!(
output.status.success(),
success,
"{cmd:?}\n\nstdout:\n{}\nstderr:\n{}",
from_utf8(&output.stdout).unwrap(),
from_utf8(&output.stderr).unwrap(),
);
} }
#[inline] #[inline]