aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2018-06-14 12:47:09 -0400
committerNick Mathewson <nickm@torproject.org>2018-06-14 12:47:09 -0400
commit71065201dd6dcaf08238a2d09a604dfcdb4aa271 (patch)
tree25b565d1436efe854a012d5cc026b054470fa3bf
parentca6d289c00e5e18b24c7f463e709125e545d4405 (diff)
parentee860b8f37707cf60daae21b806d4d473daaf2d2 (diff)
downloadtor-71065201dd6dcaf08238a2d09a604dfcdb4aa271.tar.gz
tor-71065201dd6dcaf08238a2d09a604dfcdb4aa271.zip
Merge remote-tracking branch 'public/bug26258_033' into maint-0.3.3
-rw-r--r--changes/bug26258_0334
-rw-r--r--src/test/include.am1
-rwxr-xr-xsrc/test/test_rust.sh23
3 files changed, 19 insertions, 9 deletions
diff --git a/changes/bug26258_033 b/changes/bug26258_033
new file mode 100644
index 0000000000..ceca383335
--- /dev/null
+++ b/changes/bug26258_033
@@ -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.
+
diff --git a/src/test/include.am b/src/test/include.am
index b768f74475..cc4f3e5c88 100644
--- a/src/test/include.am
+++ b/src/test/include.am
@@ -9,6 +9,7 @@ TESTS_ENVIRONMENT = \
export builddir="$(builddir)"; \
export TESTING_TOR_BINARY="$(TESTING_TOR_BINARY)"; \
export CARGO="$(CARGO)"; \
+ export EXTRA_CARGO_OPTIONS="$(EXTRA_CARGO_OPTIONS)"; \
export CARGO_ONLINE="$(CARGO_ONLINE)";
TESTSCRIPTS = \
diff --git a/src/test/test_rust.sh b/src/test/test_rust.sh
index d87336e700..8e8d29b895 100755
--- a/src/test/test_rust.sh
+++ b/src/test/test_rust.sh
@@ -3,13 +3,18 @@
set -e
-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 '{}' \;
-
-exit $?
+
+for cargo_toml_dir in "${abs_top_srcdir:-../../..}"/src/rust/*; do
+ if [ -e "${cargo_toml_dir}/Cargo.toml" ]; then
+ cd "${cargo_toml_dir}" && \
+ CARGO_TARGET_DIR="${abs_top_builddir:-../../..}/src/rust/target" \
+ CARGO_HOME="${abs_top_builddir:-../../..}/src/rust" \
+ "${CARGO:-cargo}" test --all-features ${CARGO_ONLINE:-"--frozen"} \
+ ${EXTRA_CARGO_OPTIONS} \
+ --manifest-path "${cargo_toml_dir}/Cargo.toml" || exitcode=1
+ fi
+done
+
+exit $exitcode
+