Skip to content

Commit a4d6c89

Browse files
committed
Capture and log stderr on build failure
1 parent 6eda4d6 commit a4d6c89

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

libbindgen/tests/tests.rs

+6-6
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@ use std::env;
66
use std::fs;
77
use std::io::{BufReader, BufRead, Read, Write};
88
use std::path::{Path, PathBuf};
9-
use std::process::{Command, ExitStatus};
9+
use std::process::Command;
1010
use tempdir::TempDir;
1111

12-
fn test_generated_bindings(header: &PathBuf, output: &str) -> Result<ExitStatus, std::io::Error> {
12+
fn test_generated_bindings(header: &PathBuf, output: &str) -> Result<(), ()> {
1313
let temp_dir = TempDir::new("bindgen-tests")
1414
.expect("Couldn't create temp dir");
1515

@@ -25,11 +25,11 @@ fn test_generated_bindings(header: &PathBuf, output: &str) -> Result<ExitStatus,
2525
binary.set_extension("bin");
2626

2727
let mut file = fs::File::create(&source).expect("Couldn't create output source file");
28-
try!(file.write_all(output.as_bytes()));
28+
file.write_all(output.as_bytes()).expect("Couldn't write to output source file");
2929

30-
Command::new("rustc")
30+
let output = Command::new("rustc")
3131
.arg("--test")
32-
.arg(source)
32+
.arg(&source)
3333
.arg("-o")
3434
.arg(binary)
3535
.output();
@@ -68,7 +68,7 @@ fn spawn_bindgen(header: &PathBuf, builder: libbindgen::Builder) -> Result<(), (
6868
.expect("Couldn't read from expected test output");
6969

7070
if output == buffer {
71-
test_generated_bindings(&header, &output).and(Ok(())).or(Err(()))
71+
test_generated_bindings(&header, &output)
7272
} else {
7373
println!("diff expected generated\n--- expected: {:?}\n+++ generated from: {:?}",
7474
expected, header);

0 commit comments

Comments
 (0)