diff options
| author | Sean Patrick Santos <SeanPatrickSantos@gmail.com> | 2015-01-22 11:54:45 -0700 |
|---|---|---|
| committer | Sean Patrick Santos <SeanPatrickSantos@gmail.com> | 2015-01-22 11:54:45 -0700 |
| commit | 918dd3488f450383c5ce27f0a27f45fa3fc9d0d6 (patch) | |
| tree | e33144b394d53622caf3d685312066ec2a488b05 | |
| parent | 06d401948ba7451d8ed10b4a58e1e2d08c0094f7 (diff) | |
| download | rust-918dd3488f450383c5ce27f0a27f45fa3fc9d0d6.tar.gz rust-918dd3488f450383c5ce27f0a27f45fa3fc9d0d6.zip | |
Attempt fix for assertion on Windows, and add extra output for debugging.
| -rw-r--r-- | src/test/run-pass/issue-15149.rs | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/src/test/run-pass/issue-15149.rs b/src/test/run-pass/issue-15149.rs index 59b1bb287fa..4b345f639e4 100644 --- a/src/test/run-pass/issue-15149.rs +++ b/src/test/run-pass/issue-15149.rs @@ -8,6 +8,7 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. +use std::path::BytesContainer; use std::io::{Command, fs, USER_RWX}; use std::os; @@ -15,7 +16,8 @@ fn main() { // If we're the child, make sure we were invoked correctly let args = os::args(); if args.len() > 1 && args[1].as_slice() == "child" { - return assert_eq!(args[0].as_slice(), "mytest"); + return assert_eq!(args[0], + format!("mytest{}", os::consts::EXE_SUFFIX)); } test(); @@ -38,7 +40,12 @@ fn test() { path.push(child_dir.clone()); let path = os::join_paths(path.as_slice()).unwrap(); - assert!(Command::new("mytest").env("PATH", path.as_slice()) - .arg("child") - .status().unwrap().success()); + let child_output = Command::new("mytest").env("PATH", path.as_slice()) + .arg("child") + .output().unwrap(); + + assert!(child_output.status.success(), + format!("child assertion failed\n child stdout:\n {}\n child stderr:\n {}", + child_output.output.container_as_str().unwrap(), + child_output.error.container_as_str().unwrap())); } |
