diff options
| author | Benedikt Peetz <benedikt.peetz@b-peetz.de> | 2026-03-19 05:22:51 +0100 |
|---|---|---|
| committer | Benedikt Peetz <benedikt.peetz@b-peetz.de> | 2026-03-19 05:23:52 +0100 |
| commit | a9f11981043beadb0218dddd76cefc5abc6e6f76 (patch) | |
| tree | d0ab9bd0cf9aa62e7e51253edd078a7984d23ab2 /crates/rocie-server/tests | |
| parent | test(rocie-server/tests/testenv): Make sure that the env also works in nix's ... (diff) | |
| download | server-a9f11981043beadb0218dddd76cefc5abc6e6f76.zip | |
test(rocie-server/tests/testenv): Make the binary finding algorithm more generic
Now we do no longer assume, that nix does a release build and normal development uses a debug build. But we still prefer a debug artefact over the release one (assuming that the debug one will be newer).
Diffstat (limited to 'crates/rocie-server/tests')
| -rw-r--r-- | crates/rocie-server/tests/_testenv/init.rs | 22 |
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 { |
