summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xt/t1001-read-tree-m-2way.sh8
-rwxr-xr-xt/t1002-read-tree-m-u-2way.sh8
-rwxr-xr-xt/t1005-read-tree-m-2way-emu23.sh10
-rwxr-xr-xt/t4002-diff-basic.sh6
-rwxr-xr-xt/t5300-pack-object.sh12
-rwxr-xr-xt/t5400-send-pack.sh4
-rwxr-xr-xt/test-lib.sh19
7 files changed, 39 insertions, 28 deletions
diff --git a/t/t1001-read-tree-m-2way.sh b/t/t1001-read-tree-m-2way.sh
index b3e6bd57d0..919f2b3109 100755
--- a/t/t1001-read-tree-m-2way.sh
+++ b/t/t1001-read-tree-m-2way.sh
@@ -100,7 +100,7 @@ test_expect_success \
git-checkout-cache -u -f -q -a &&
git-update-cache --add yomin &&
read_tree_twoway $treeH $treeM &&
- git-ls-files --stage >4.out || exit
+ git-ls-files --stage >4.out || return 1
diff -u M.out 4.out >4diff.out
compare_change 4diff.out expected &&
check_cache_at yomin clean'
@@ -114,7 +114,7 @@ test_expect_success \
git-update-cache --add yomin &&
echo yomin yomin >yomin &&
read_tree_twoway $treeH $treeM &&
- git-ls-files --stage >5.out || exit
+ git-ls-files --stage >5.out || return 1
diff -u M.out 5.out >5diff.out
compare_change 5diff.out expected &&
check_cache_at yomin dirty'
@@ -215,7 +215,7 @@ test_expect_success \
echo nitfol nitfol >nitfol &&
git-update-cache --add nitfol &&
read_tree_twoway $treeH $treeM &&
- git-ls-files --stage >14.out || exit
+ git-ls-files --stage >14.out || return 1
diff -u M.out 14.out >14diff.out
compare_change 14diff.out expected &&
check_cache_at nitfol clean'
@@ -229,7 +229,7 @@ test_expect_success \
git-update-cache --add nitfol &&
echo nitfol nitfol nitfol >nitfol &&
read_tree_twoway $treeH $treeM &&
- git-ls-files --stage >15.out || exit
+ git-ls-files --stage >15.out || return 1
diff -u M.out 15.out >15diff.out
compare_change 15diff.out expected &&
check_cache_at nitfol dirty'
diff --git a/t/t1002-read-tree-m-u-2way.sh b/t/t1002-read-tree-m-u-2way.sh
index 2f1ee79698..512d8977a2 100755
--- a/t/t1002-read-tree-m-u-2way.sh
+++ b/t/t1002-read-tree-m-u-2way.sh
@@ -73,7 +73,7 @@ test_expect_success \
'rm -f .git/index &&
git-update-cache --add yomin &&
git-read-tree -m -u $treeH $treeM &&
- git-ls-files --stage >4.out || exit
+ git-ls-files --stage >4.out || return 1
diff --unified=0 M.out 4.out >4diff.out
compare_change 4diff.out expected &&
check_cache_at yomin clean &&
@@ -90,7 +90,7 @@ test_expect_success \
git-update-cache --add yomin &&
echo yomin yomin >yomin &&
git-read-tree -m -u $treeH $treeM &&
- git-ls-files --stage >5.out || exit
+ git-ls-files --stage >5.out || return 1
diff --unified=0 M.out 5.out >5diff.out
compare_change 5diff.out expected &&
check_cache_at yomin dirty &&
@@ -192,7 +192,7 @@ test_expect_success \
echo nitfol nitfol >nitfol &&
git-update-cache --add nitfol &&
git-read-tree -m -u $treeH $treeM &&
- git-ls-files --stage >14.out || exit
+ git-ls-files --stage >14.out || return 1
diff --unified=0 M.out 14.out >14diff.out
compare_change 14diff.out expected &&
sum bozbar frotz >actual14.sum &&
@@ -212,7 +212,7 @@ test_expect_success \
git-update-cache --add nitfol &&
echo nitfol nitfol nitfol >nitfol &&
git-read-tree -m -u $treeH $treeM &&
- git-ls-files --stage >15.out || exit
+ git-ls-files --stage >15.out || return 1
diff --unified=0 M.out 15.out >15diff.out
compare_change 15diff.out expected &&
check_cache_at nitfol dirty &&
diff --git a/t/t1005-read-tree-m-2way-emu23.sh b/t/t1005-read-tree-m-2way-emu23.sh
index d80752ddd5..9227254fce 100755
--- a/t/t1005-read-tree-m-2way-emu23.sh
+++ b/t/t1005-read-tree-m-2way-emu23.sh
@@ -120,7 +120,7 @@ test_expect_success \
git-checkout-cache -u -f -q -a &&
git-update-cache --add yomin &&
read_tree_twoway $treeH $treeM &&
- git-ls-files --stage >4.out || exit
+ git-ls-files --stage >4.out || return 1
diff -u M.out 4.out >4diff.out
compare_change 4diff.out expected &&
check_cache_at yomin clean'
@@ -136,7 +136,7 @@ test_expect_success \
git-update-cache --add yomin &&
echo yomin yomin >yomin &&
read_tree_twoway $treeH $treeM &&
- git-ls-files --stage >5.out || exit
+ git-ls-files --stage >5.out || return 1
diff -u M.out 5.out >5diff.out
compare_change 5diff.out expected &&
check_cache_at yomin dirty'
@@ -241,7 +241,7 @@ test_expect_success \
echo nitfol nitfol >nitfol &&
git-update-cache --add nitfol &&
read_tree_twoway $treeH $treeM &&
- git-ls-files --stage >14.out || exit
+ git-ls-files --stage >14.out || return 1
diff -u M.out 14.out >14diff.out
compare_change 14diff.out expected &&
check_cache_at nitfol clean'
@@ -255,7 +255,7 @@ test_expect_success \
git-update-cache --add nitfol &&
echo nitfol nitfol nitfol >nitfol &&
read_tree_twoway $treeH $treeM &&
- git-ls-files --stage >15.out || exit
+ git-ls-files --stage >15.out || return 1
diff -u M.out 15.out >15diff.out
compare_change 15diff.out expected &&
check_cache_at nitfol dirty'
@@ -352,7 +352,7 @@ test_expect_success \
sed -e "s/such as/SUCH AS/" bozbar-old >bozbar &&
git-update-cache --add bozbar &&
read_tree_twoway $treeH $treeM &&
- git-ls-files --stage >22.out || exit
+ git-ls-files --stage >22.out || return 1
diff -u M.out 22.out >22diff.out
compare_change 22diff.out &&
check_cache_at bozbar clean'
diff --git a/t/t4002-diff-basic.sh b/t/t4002-diff-basic.sh
index 03fc4b9830..2ec2961189 100755
--- a/t/t4002-diff-basic.sh
+++ b/t/t4002-diff-basic.sh
@@ -191,7 +191,7 @@ test_expect_success \
'rm -fr Z [A-Z][A-Z] &&
git-read-tree $tree_A &&
git-checkout-cache -f -a &&
- git-read-tree -m $tree_O || (exit 1)
+ git-read-tree -m $tree_O || return 1
git-update-cache --refresh >/dev/null ;# this can exit non-zero
git-diff-files >.test-a &&
cmp_diff_files_output .test-a .test-recursive-OA'
@@ -201,7 +201,7 @@ test_expect_success \
'rm -fr Z [A-Z][A-Z] &&
git-read-tree $tree_B &&
git-checkout-cache -f -a &&
- git-read-tree -m $tree_O || (exit 1)
+ git-read-tree -m $tree_O || return 1
git-update-cache --refresh >/dev/null ;# this can exit non-zero
git-diff-files >.test-a &&
cmp_diff_files_output .test-a .test-recursive-OB'
@@ -211,7 +211,7 @@ test_expect_success \
'rm -fr Z [A-Z][A-Z] &&
git-read-tree $tree_B &&
git-checkout-cache -f -a &&
- git-read-tree -m $tree_A || (exit 1)
+ git-read-tree -m $tree_A || return 1
git-update-cache --refresh >/dev/null ;# this can exit non-zero
git-diff-files >.test-a &&
cmp_diff_files_output .test-a .test-recursive-AB'
diff --git a/t/t5300-pack-object.sh b/t/t5300-pack-object.sh
index b0b9329573..03951242d3 100755
--- a/t/t5300-pack-object.sh
+++ b/t/t5300-pack-object.sh
@@ -16,7 +16,7 @@ test_expect_success \
for i in a b c
do
dd if=/dev/zero bs=4k count=1 | tr "\\0" $i >$i &&
- git-update-cache --add $i || exit
+ git-update-cache --add $i || return 1
done &&
cat c >d && echo foo >>d && git-update-cache --add d &&
tree=`git-write-tree` &&
@@ -29,7 +29,7 @@ test_expect_success \
while read object
do
t=`git-cat-file -t $object` &&
- git-cat-file $t $object || exit 1
+ git-cat-file $t $object || return 1
done <obj-list
} >expect'
@@ -58,7 +58,7 @@ test_expect_success \
do
cmp $path ../.git/$path || {
echo $path differs.
- exit 1
+ return 1
}
done'
cd $TRASH
@@ -88,7 +88,7 @@ test_expect_success \
do
cmp $path ../.git/$path || {
echo $path differs.
- exit 1
+ return 1
}
done'
cd $TRASH
@@ -106,7 +106,7 @@ test_expect_success \
while read object
do
t=`git-cat-file -t $object` &&
- git-cat-file $t $object || exit 1
+ git-cat-file $t $object || return 1
done <obj-list
} >current &&
diff expect current'
@@ -122,7 +122,7 @@ test_expect_success \
while read object
do
t=`git-cat-file -t $object` &&
- git-cat-file $t $object || exit 1
+ git-cat-file $t $object || return 1
done <obj-list
} >current &&
diff expect current'
diff --git a/t/t5400-send-pack.sh b/t/t5400-send-pack.sh
index a362c6ebe0..2c142dfeb0 100755
--- a/t/t5400-send-pack.sh
+++ b/t/t5400-send-pack.sh
@@ -18,7 +18,7 @@ test_expect_success setup '
do
sleep 1 &&
commit=$(echo "Commit #$i" | git-commit-tree $tree -p $parent) &&
- parent=$commit || exit
+ parent=$commit || return 1
done &&
echo "$commit" >.git/HEAD &&
git clone -l ./. victim &&
@@ -31,7 +31,7 @@ test_expect_success setup '
do
sleep 1 &&
commit=$(echo "Rebase #$i" | git-commit-tree $tree -p $parent) &&
- parent=$commit || exit
+ parent=$commit || return 1
done &&
echo "$commit" >.git/HEAD &&
echo Rebase &&
diff --git a/t/test-lib.sh b/t/test-lib.sh
index 5cdd41dd93..abcf90323e 100755
--- a/t/test-lib.sh
+++ b/t/test-lib.sh
@@ -63,6 +63,7 @@ do
esac
done
+exec 5>&1
if test "$verbose" = "t"
then
exec 4>&2 3>&1
@@ -96,15 +97,24 @@ test_debug () {
test "$debug" = "" || eval "$1"
}
+test_run_ () {
+ trap 'echo >&5 "FATAL: Unexpected exit with code $?"; exit 1' exit
+ eval >&3 2>&4 "$1"
+ eval_ret="$?"
+ trap - exit
+ return 0
+}
+
test_expect_failure () {
test "$#" = 2 ||
error "bug in the test script: not 2 parameters to test-expect-failure"
say >&3 "expecting failure: $2"
- if eval >&3 2>&4 "$2"
+ test_run_ "$2"
+ if [ "$?" = 0 -a "$eval_ret" != 0 ]
then
- test_failure_ "$@"
- else
test_ok_ "$1"
+ else
+ test_failure_ "$@"
fi
}
@@ -112,7 +122,8 @@ test_expect_success () {
test "$#" = 2 ||
error "bug in the test script: not 2 parameters to test-expect-success"
say >&3 "expecting success: $2"
- if eval >&3 2>&4 "$2"
+ test_run_ "$2"
+ if [ "$?" = 0 -a "$eval_ret" = 0 ]
then
test_ok_ "$1"
else