Make sure that the test_rust.sh script fails when a test fails

Exit codes from find(1) seem not to be so reliable as we had hoped.

Closes ticket 26258; bugfix on 0.3.3.4-alpha when we fixed #25560
This commit is contained in:
Nick Mathewson
2018-05-31 17:15:57 -07:00
parent fa1890e97f
commit 9d06c41c6e
2 changed files with 12 additions and 7 deletions
+4
View File
@@ -0,0 +1,4 @@
o Major bugfixes (rust, testing):
- Fix a bug where a failure in the rust unit tests would not actually
cause the build to fail. Fixes bug 26258; bugfix on 0.3.3.4-alpha.
+8 -7
View File
@@ -3,13 +3,14 @@
set -e
CARGO_TARGET_DIR="${abs_top_builddir:-../../..}/src/rust/target" \
for cargo_toml in "${abs_top_srcdir:-../../..}"/src/rust/*/Cargo.toml; do
CARGO_TARGET_DIR="${abs_top_builddir:-../../..}/src/rust/target" \
CARGO_HOME="${abs_top_builddir:-../../..}/src/rust" \
find "${abs_top_srcdir:-../../..}/src/rust" \
-mindepth 2 -maxdepth 2 \
-type f -name 'Cargo.toml' \
-exec "${CARGO:-cargo}" test --all-features ${CARGO_ONLINE-"--frozen"} \
--manifest-path '{}' \;
"${CARGO:-cargo}" test --all-features ${CARGO_ONLINE-"--frozen"} \
--manifest-path "$cargo_toml" || exitcode=1
done
exit $exitcode
exit $?