summaryrefslogtreecommitdiffstats
path: root/t/t6120-describe.sh
diff options
context:
space:
mode:
authorEric Sunshine <sunshine@sunshineco.com>2021-12-09 06:11:06 +0100
committerJunio C Hamano <gitster@pobox.com>2021-12-13 19:29:48 +0100
commit74d2f5695dab4454097b2d1693f7206e8328724a (patch)
tree6d4a147a909ef45477fd1509e83530b7ed39bec9 /t/t6120-describe.sh
parenttests: use test_write_lines() to generate line-oriented output (diff)
downloadgit-74d2f5695dab4454097b2d1693f7206e8328724a.tar.xz
git-74d2f5695dab4454097b2d1693f7206e8328724a.zip
tests: fix broken &&-chains in compound statements
The top-level &&-chain checker built into t/test-lib.sh causes tests to magically exit with code 117 if the &&-chain is broken. However, it has the shortcoming that the magic does not work within `{...}` groups, `(...)` subshells, `$(...)` substitutions, or within bodies of compound statements, such as `if`, `for`, `while`, `case`, etc. `chainlint.sed` partly fills in the gap by catching broken &&-chains in `(...)` subshells, but bugs can still lurk behind broken &&-chains in the other cases. Fix broken &&-chains in compound statements in order to reduce the number of possible lurking bugs. Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Reviewed-by: Elijah Newren <newren@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t6120-describe.sh')
-rwxr-xr-xt/t6120-describe.sh7
1 files changed, 5 insertions, 2 deletions
diff --git a/t/t6120-describe.sh b/t/t6120-describe.sh
index bae2419150..9b2cc066f7 100755
--- a/t/t6120-describe.sh
+++ b/t/t6120-describe.sh
@@ -390,8 +390,11 @@ test_expect_success ULIMIT_STACK_SIZE 'name-rev works in a deep repo' '
committer A U Thor <author@example.com> $((1000000000 + $i * 100)) +0200
data <<EOF
commit #$i
-EOF"
- test $i = 1 && echo "from refs/heads/main^0"
+EOF" &&
+ if test $i = 1
+ then
+ echo "from refs/heads/main^0"
+ fi &&
i=$(($i + 1))
done | git fast-import &&
git checkout main &&