Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/test-utils/src/lib.rs')
-rw-r--r--crates/test-utils/src/lib.rs9
1 files changed, 8 insertions, 1 deletions
diff --git a/crates/test-utils/src/lib.rs b/crates/test-utils/src/lib.rs
index 36be9937d3..e7279fa1f6 100644
--- a/crates/test-utils/src/lib.rs
+++ b/crates/test-utils/src/lib.rs
@@ -396,12 +396,19 @@ pub fn skip_slow_tests() -> bool {
if should_skip {
eprintln!("ignoring slow test");
} else {
- let path = project_root().join("./target/.slow_tests_cookie");
+ let path = target_dir().join(".slow_tests_cookie");
fs::write(path, ".").unwrap();
}
should_skip
}
+pub fn target_dir() -> Utf8PathBuf {
+ match std::env::var("CARGO_TARGET_DIR") {
+ Ok(target) => Utf8PathBuf::from(target),
+ Err(_) => project_root().join("target"),
+ }
+}
+
/// Returns the path to the root directory of `rust-analyzer` project.
pub fn project_root() -> Utf8PathBuf {
let dir = env!("CARGO_MANIFEST_DIR");