collect all test failures before failing

This commit is contained in:
Gus Wynn 2020-09-03 18:36:51 -07:00
parent f6768b816c
commit 5ea8e55aea
1 changed files with 6 additions and 1 deletions

View File

@ -250,6 +250,7 @@ impl MDBook {
// Index Preprocessor is disabled so that chapter paths continue to point to the // Index Preprocessor is disabled so that chapter paths continue to point to the
// actual markdown files. // actual markdown files.
let mut failed = false;
for item in book.iter() { for item in book.iter() {
if let BookItem::Chapter(ref ch) = *item { if let BookItem::Chapter(ref ch) = *item {
let chapter_path = match ch.path { let chapter_path = match ch.path {
@ -282,7 +283,8 @@ impl MDBook {
let output = cmd.output()?; let output = cmd.output()?;
if !output.status.success() { if !output.status.success() {
bail!( failed = true;
error!(
"rustdoc returned an error:\n\ "rustdoc returned an error:\n\
\n--- stdout\n{}\n--- stderr\n{}", \n--- stdout\n{}\n--- stderr\n{}",
String::from_utf8_lossy(&output.stdout), String::from_utf8_lossy(&output.stdout),
@ -291,6 +293,9 @@ impl MDBook {
} }
} }
} }
if failed {
bail!("One of more tests failed");
}
Ok(()) Ok(())
} }