Skip to content

Commit

Permalink
t: fix some trivial cases of ignored exit codes in loops
Browse files Browse the repository at this point in the history
These are all cases where we do a setup step of the form:

  for i in $foo; do
	  set_up $i || break
  done &&
  more_setup

would not notice a failure in set_up (because break always
returns a 0 exit code). These are just setup steps that we
do not expect to fail, but it does not hurt to be defensive.

Most can be fixed by converting the "break" to a "return 1"
(since we eval our tests inside a function for just this
purpose). A few of the loops are inside subshells, so we can
use just "exit 1" to break out of the subshell. And a few
can actually be made shorter by just unrolling the loop.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
  • Loading branch information
Jeff King authored and Junio C Hamano committed Mar 25, 2015
1 parent 76e057d commit e6821d0
Show file tree
Hide file tree
Showing 10 changed files with 24 additions and 28 deletions.
11 changes: 4 additions & 7 deletions t/t3010-ls-files-killed-modified.sh
Original file line number Diff line number Diff line change
Expand Up @@ -55,13 +55,10 @@ test_expect_success 'git update-index --add to add various paths.' '
: >path9 &&
date >path10 &&
git update-index --add -- path0 path?/file? pathx/ju path7 path8 path9 path10 &&
for i in 1 2
do
git init submod$i &&
(
cd submod$i && git commit --allow-empty -m "empty $i"
) || break
done &&
git init submod1 &&
git -C submod1 commit --allow-empty -m "empty 1" &&
git init submod2 &&
git -C submod2 commit --allow-empty -m "empty 2" &&
git update-index --add submod[12] &&
(
cd submod1 &&
Expand Down
2 changes: 1 addition & 1 deletion t/t3031-merge-criscross.sh
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ test_expect_success 'setup repo with criss-cross history' '
do
echo $n > data/$n &&
n=$(($n+1)) ||
break
return 1
done &&
# check them in
Expand Down
2 changes: 1 addition & 1 deletion t/t3202-show-branch-octopus.sh
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ test_expect_success 'setup' '
> file$i &&
git add file$i &&
test_tick &&
git commit -m branch$i || break
git commit -m branch$i || return 1
done
'
Expand Down
2 changes: 1 addition & 1 deletion t/t4024-diff-optimize-common.sh
Original file line number Diff line number Diff line change
Expand Up @@ -139,7 +139,7 @@ test_expect_success setup '
( printf C; zs $n ) >file-c$n &&
( echo D; zs $n ) >file-d$n &&
expect_pattern $n || break
expect_pattern $n || return 1
done >expect
'
Expand Down
8 changes: 4 additions & 4 deletions t/t4046-diff-unmerged.sh
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ test_expect_success setup '
do
blob=$(echo $i | git hash-object --stdin) &&
eval "blob$i=$blob" &&
eval "m$i=\"100644 \$blob$i $i\"" || break
eval "m$i=\"100644 \$blob$i $i\"" || return 1
done &&
paths= &&
for b in o x
Expand All @@ -24,9 +24,9 @@ test_expect_success setup '
case "$b" in x) echo "$m1$p" ;; esac &&
case "$o" in x) echo "$m2$p" ;; esac &&
case "$t" in x) echo "$m3$p" ;; esac ||
break
done || break
done || break
return 1
done
done
done >ls-files-s.expect &&
git update-index --index-info <ls-files-s.expect &&
git ls-files -s >ls-files-s.actual &&
Expand Down
2 changes: 1 addition & 1 deletion t/t4151-am-abort.sh
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ test_expect_success setup '
echo $i >otherfile-$i &&
git add otherfile-$i &&
test_tick &&
git commit -a -m $i || break
git commit -a -m $i || return 1
done &&
git format-patch --no-numbered initial &&
git checkout -b side initial &&
Expand Down
8 changes: 4 additions & 4 deletions t/t5505-remote.sh
Original file line number Diff line number Diff line change
Expand Up @@ -579,7 +579,7 @@ test_expect_success 'update with arguments' '
cd one &&
for b in $(git branch -r)
do
git branch -r -d $b || break
git branch -r -d $b || exit 1
done &&
git remote add manduca ../mirror &&
git remote add megaloprepus ../mirror &&
Expand Down Expand Up @@ -622,7 +622,7 @@ test_expect_success 'update default' '
cd one &&
for b in $(git branch -r)
do
git branch -r -d $b || break
git branch -r -d $b || exit 1
done &&
git config remote.drosophila.skipDefaultUpdate true &&
git remote update default &&
Expand All @@ -642,7 +642,7 @@ test_expect_success 'update default (overridden, with funny whitespace)' '
cd one &&
for b in $(git branch -r)
do
git branch -r -d $b || break
git branch -r -d $b || exit 1
done &&
git config remotes.default "$(printf "\t drosophila \n")" &&
git remote update default &&
Expand All @@ -656,7 +656,7 @@ test_expect_success 'update (with remotes.default defined)' '
cd one &&
for b in $(git branch -r)
do
git branch -r -d $b || break
git branch -r -d $b || exit 1
done &&
git config remotes.default "drosophila" &&
git remote update &&
Expand Down
4 changes: 2 additions & 2 deletions t/t5514-fetch-multiple.sh
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@ test_expect_success 'git fetch --all (skipFetchAll)' '
(cd test4 &&
for b in $(git branch -r)
do
git branch -r -d $b || break
git branch -r -d $b || exit 1
done &&
git remote add three ../three &&
git config remote.three.skipFetchAll true &&
Expand All @@ -144,7 +144,7 @@ test_expect_success 'git fetch --multiple (ignoring skipFetchAll)' '
(cd test4 &&
for b in $(git branch -r)
do
git branch -r -d $b || break
git branch -r -d $b || exit 1
done &&
git fetch --multiple one two three &&
git branch -r > output &&
Expand Down
6 changes: 3 additions & 3 deletions t/t6026-merge-attr.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,23 +11,23 @@ test_expect_success setup '
for f in text binary union
do
echo Initial >$f && git add $f || break
echo Initial >$f && git add $f || return 1
done &&
test_tick &&
git commit -m Initial &&
git branch side &&
for f in text binary union
do
echo Master >>$f && git add $f || break
echo Master >>$f && git add $f || return 1
done &&
test_tick &&
git commit -m Master &&
git checkout side &&
for f in text binary union
do
echo Side >>$f && git add $f || break
echo Side >>$f && git add $f || return 1
done &&
test_tick &&
git commit -m Side &&
Expand Down
7 changes: 3 additions & 4 deletions t/t6040-tracking-info.sh
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,9 @@ advance () {
}

test_expect_success setup '
for i in a b c;
do
advance $i || break
done &&
advance a &&
advance b &&
advance c &&
git clone . test &&
(
cd test &&
Expand Down

0 comments on commit e6821d0

Please sign in to comment.