diff --git a/tests/compile-test.rs b/tests/compile-test.rs index 6dcd1ff05245..66c5734cc112 100644 --- a/tests/compile-test.rs +++ b/tests/compile-test.rs @@ -1,7 +1,7 @@ extern crate compiletest_rs as compiletest; use std::path::PathBuf; -use std::env::var; +use std::env::{var, temp_dir}; fn run_mode(dir: &'static str, mode: &'static str) { let mut config = compiletest::default_config(); @@ -14,6 +14,10 @@ fn run_mode(dir: &'static str, mode: &'static str) { } config.mode = cfg_mode; + if cfg!(windows) { + // work around https://github.com/laumann/compiletest-rs/issues/35 on msvc windows + config.build_base = temp_dir(); + } config.src_base = PathBuf::from(format!("tests/{}", dir)); compiletest::run_tests(&config); diff --git a/tests/dogfood.rs b/tests/dogfood.rs index d050b4fc5ba1..d3021b8f2f97 100644 --- a/tests/dogfood.rs +++ b/tests/dogfood.rs @@ -5,7 +5,7 @@ extern crate compiletest_rs as compiletest; extern crate test; -use std::env::{var, set_var}; +use std::env::{var, set_var, temp_dir}; use std::path::PathBuf; use test::TestPaths; @@ -23,6 +23,11 @@ fn dogfood() { config.filter = Some(name.to_owned()) } + if cfg!(windows) { + // work around https://github.com/laumann/compiletest-rs/issues/35 on msvc windows + config.build_base = temp_dir(); + } + config.mode = cfg_mode; let paths = TestPaths {