From 7f45dc9e68ffe80d399560644af48383a25427fd Mon Sep 17 00:00:00 2001 From: Sean Patrick Santos Date: Thu, 22 Jan 2015 18:34:58 -0700 Subject: [PATCH] Add a random number string to the end of the issue-15149 test's child directory's name, and remove the directory after a successful test. --- src/test/run-pass/issue-15149.rs | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/test/run-pass/issue-15149.rs b/src/test/run-pass/issue-15149.rs index 4b345f639e4cb..5d3571e4d748b 100644 --- a/src/test/run-pass/issue-15149.rs +++ b/src/test/run-pass/issue-15149.rs @@ -8,9 +8,10 @@ // 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; +use std::path::BytesContainer; +use std::rand::random; fn main() { // If we're the child, make sure we were invoked correctly @@ -28,8 +29,10 @@ fn test() { let my_path = os::self_exe_name().unwrap(); let my_dir = my_path.dir_path(); - let child_dir = Path::new(my_dir.join("issue-15149-child")); - drop(fs::mkdir(&child_dir, USER_RWX)); + let random_u32: u32 = random(); + let child_dir = Path::new(my_dir.join(format!("issue-15149-child-{}", + random_u32))); + fs::mkdir(&child_dir, USER_RWX).unwrap(); let child_path = child_dir.join(format!("mytest{}", os::consts::EXE_SUFFIX)); @@ -48,4 +51,7 @@ fn test() { 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())); + + fs::rmdir_recursive(&child_dir).unwrap(); + }