summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2016-10-31 13:15:27 -0700
committerJunio C Hamano <gitster@pobox.com>2016-10-31 13:15:27 -0700
commitab3ad63c9aa9664901333ede06ce06ce215b6cde (patch)
tree1a12d4f179442cb1272aa5954f3b8acd2f851ad5
parent590f0bfe9f8c97fe64a32354191b135d136d6f3a (diff)
parent28fab7b23d0f9f15745c99baf25ec49e38594aa5 (diff)
downloadgit-ab3ad63c9aa9664901333ede06ce06ce215b6cde.tar.gz
Merge branch 'nd/test-helpers'
Update to the test framework made in 2.9 timeframe broke running the tests under valgrind, which has been fixed. * nd/test-helpers: valgrind: support test helpers
-rw-r--r--t/test-lib.sh9
-rwxr-xr-xt/valgrind/valgrind.sh12
2 files changed, 18 insertions, 3 deletions
diff --git a/t/test-lib.sh b/t/test-lib.sh
index b859db61ac..cde7fc7fcf 100644
--- a/t/test-lib.sh
+++ b/t/test-lib.sh
@@ -809,7 +809,14 @@ then
return;
base=$(basename "$1")
- symlink_target=$GIT_BUILD_DIR/$base
+ case "$base" in
+ test-*)
+ symlink_target="$GIT_BUILD_DIR/t/helper/$base"
+ ;;
+ *)
+ symlink_target="$GIT_BUILD_DIR/$base"
+ ;;
+ esac
# do not override scripts
if test -x "$symlink_target" &&
test ! -d "$symlink_target" &&
diff --git a/t/valgrind/valgrind.sh b/t/valgrind/valgrind.sh
index 42153036dc..669ebaf68b 100755
--- a/t/valgrind/valgrind.sh
+++ b/t/valgrind/valgrind.sh
@@ -1,11 +1,19 @@
#!/bin/sh
base=$(basename "$0")
+case "$base" in
+test-*)
+ program="$GIT_VALGRIND/../../t/helper/$base"
+ ;;
+*)
+ program="$GIT_VALGRIND/../../$base"
+ ;;
+esac
TOOL_OPTIONS='--leak-check=no'
test -z "$GIT_VALGRIND_ENABLED" &&
-exec "$GIT_VALGRIND"/../../"$base" "$@"
+exec "$program" "$@"
case "$GIT_VALGRIND_MODE" in
memcheck-fast)
@@ -29,4 +37,4 @@ exec valgrind -q --error-exitcode=126 \
--log-fd=4 \
--input-fd=4 \
$GIT_VALGRIND_OPTIONS \
- "$GIT_VALGRIND"/../../"$base" "$@"
+ "$program" "$@"