diff options
| author | Matthias Krüger <matthias.krueger@famsik.de> | 2018-09-06 02:07:09 +0200 |
|---|---|---|
| committer | Matthias Krüger <matthias.krueger@famsik.de> | 2018-09-06 02:07:09 +0200 |
| commit | e058a3f7e7299fda0e2667765069aba60e400a0f (patch) | |
| tree | 2c70f94dc02311fa51e478c4d3e232ed9125746f /src/test | |
| parent | f655671e12281c1b6ea9d22a0695c14a70de54ee (diff) | |
fix cargo test --release.
test::verify_check_works was failing in relase mode on my machine. The problem was it would check for target/debug/rustfmt in release mode instead of target/release/rustfmt and fail an assert. This commit fixes it so that cargo check looks for target/debug/rustfmt and cargo check --release looks for target/release/rustfmt
Diffstat (limited to 'src/test')
| -rw-r--r-- | src/test/mod.rs | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/test/mod.rs b/src/test/mod.rs index 17f8ffec9a1..f7848dfd737 100644 --- a/src/test/mod.rs +++ b/src/test/mod.rs @@ -944,10 +944,21 @@ fn rustfmt() -> PathBuf { let mut me = env::current_exe().expect("failed to get current executable"); me.pop(); // chop of the test name me.pop(); // chop off `deps` + + // if we run `cargo test --release` we might only have a release build + if cfg!(release) { + // ../release/ + me.pop(); + me.push("release"); + } me.push("rustfmt"); assert!( me.is_file() || me.with_extension("exe").is_file(), - "no rustfmt bin, try running `cargo build` before testing" + if cfg!(release) { + "no rustfmt bin, try running `cargo build --release` before testing" + } else { + "no rustfmt bin, try running `cargo build` before testing" + } ); me } |
