about summary refs log tree commit diff stats
path: root/crates/rocie-server
diff options
context:
space:
mode:
Diffstat (limited to 'crates/rocie-server')
-rw-r--r--crates/rocie-server/tests/_testenv/init.rs22
1 files changed, 17 insertions, 5 deletions
diff --git a/crates/rocie-server/tests/_testenv/init.rs b/crates/rocie-server/tests/_testenv/init.rs
index 52ecc68..89384a5 100644
--- a/crates/rocie-server/tests/_testenv/init.rs
+++ b/crates/rocie-server/tests/_testenv/init.rs
@@ -88,12 +88,18 @@ fn prepare_files_and_dirs(test_dir: &Path) -> io::Result<Paths> {
 fn find_server_exe() -> PathBuf {
     let target = target_dir();
 
-    let target = if target.join("debug").exists() {
+    let prefixed_target = target.join(env!("TARGET"));
+
+    let target = if prefixed_target.join("debug").exists() {
+        prefixed_target.join("debug")
+    } else if prefixed_target.join("release").exists() {
+        prefixed_target.join("release")
+    } else if target.join("debug").exists() {
         target.join("debug")
+    } else if target.join("release").exists() {
+        target.join("release")
     } else {
-        // assume that we have the target prefixed:
-        // E.g.: ./target/x86_64-linux-gnu/release/..
-        target.join(env!("TARGET")).join("release")
+        panic!("Failed to find directory for rocie-server binary.");
     };
 
     let exe_name = if cfg!(windows) {
@@ -102,7 +108,13 @@ fn find_server_exe() -> PathBuf {
         "rocie-server"
     };
 
-    target.join(exe_name)
+    let final_path = target.join(exe_name);
+    println!(
+        "TESTENV: Assuming `rocie-server` binary is at: `{}`",
+        final_path.display()
+    );
+
+    final_path
 }
 
 fn rocie_base_path(port: &str) -> String {