[tor-commits] [tor/master] When building with coverage, run chutney with coverage
nickm at torproject.org
nickm at torproject.org
Mon Aug 3 17:50:39 UTC 2015
commit 62e6513b48009adba289243155b93da3212c00c2
Author: Nick Mathewson <nickm at torproject.org>
Date: Mon Aug 3 13:23:58 2015 -0400
When building with coverage, run chutney with coverage
Previously, this required me to do stuff like
'cp src/or/tor-cov src/or/tor' ,
which is pretty embarrassing.
---
Makefile.am | 4 +++-
changes/chutney-coverage | 3 +++
src/test/test-network.sh | 16 ++++++++++++++--
3 files changed, 20 insertions(+), 3 deletions(-)
diff --git a/Makefile.am b/Makefile.am
index 784ff48..5b4d59c 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -36,9 +36,11 @@ EXTRA_DIST+= \
if COVERAGE_ENABLED
TEST_CFLAGS=-fno-inline -fprofile-arcs -ftest-coverage
TEST_CPPFLAGS=-DTOR_UNIT_TESTS -DTOR_COVERAGE
+TEST_NETWORK_FLAGS="--coverage"
else
TEST_CFLAGS=
TEST_CPPFLAGS=-DTOR_UNIT_TESTS
+TEST_NETWORK_FLAGS=
endif
#install-data-local:
@@ -79,7 +81,7 @@ need-chutney-path:
# Note that test-network requires a copy of Chutney in $CHUTNEY_PATH.
# Chutney can be cloned from https://git.torproject.org/chutney.git .
test-network: need-chutney-path all
- $(top_srcdir)/src/test/test-network.sh
+ $(top_srcdir)/src/test/test-network.sh $(TEST_NETWORK_FLAGS)
need-stem-path:
@if test ! -d "$$STEM_SOURCE_DIR"; then \
diff --git a/changes/chutney-coverage b/changes/chutney-coverage
new file mode 100644
index 0000000..53983c8
--- /dev/null
+++ b/changes/chutney-coverage
@@ -0,0 +1,3 @@
+ o Testing:
+ - When building Tor with testing coverage enabled, run Chutney tests
+ (if any) using the 'tor-cov' coverage binary.
diff --git a/src/test/test-network.sh b/src/test/test-network.sh
index 49bf03c..cc74c0f 100755
--- a/src/test/test-network.sh
+++ b/src/test/test-network.sh
@@ -1,6 +1,7 @@
#! /bin/sh
ECHO_N="/bin/echo -n"
+use_coverage_binary=false
until [ -z $1 ]
do
@@ -41,7 +42,10 @@ do
--hs-multi-client|--hs-multi-clients|--hs-client|--hs-clients)
export CHUTNEY_HS_MULTI_CLIENT="$2"
shift
- ;;
+ ;;
+ --coverage)
+ use_coverage_binary=true
+ ;;
*)
echo "Sorry, I don't know what to do with '$1'."
exit 2
@@ -59,9 +63,17 @@ myname=$(basename $0)
echo "$myname: missing 'chutney' in CHUTNEY_PATH ($CHUTNEY_PATH)"
exit 1
}
+
cd "$CHUTNEY_PATH"
# For picking up the right tor binaries.
-PATH="$TOR_DIR/src/or:$TOR_DIR/src/tools:$PATH"
+tor_name=tor
+tor_gencert_name=tor-gencert
+if test "$use_coverage_binary" = true; then
+ tor_name=tor-cov
+fi
+export CHUTNEY_TOR="${TOR_DIR}/src/or/${tor_name}"
+export CHUTNEY_TOR_GENCERT="${TOR_DIR}/src/tools/${tor_gencert_name}"
+
./tools/bootstrap-network.sh $NETWORK_FLAVOUR || exit 2
# Sleep some, waiting for the network to bootstrap.
More information about the tor-commits
mailing list