git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 1/3] t2407: fix broken &&-chains in compound statement

From
Eric Sunshine via GitGitGadget <gitgitgadget@gmail.com>
Date
Aug 22, 2022, 18:26 UTC
Message-ID
<15d7520479f412d13de17c323311aba077043bf8.1661192802.git.gitgitgadget@gmail.com>
In-Reply-To
<pull.1312.git.git.1661192802.gitgitgadget@gmail.com>
From: Eric Sunshine <sunshine@sunshineco.com>

The breaks in the &&-chain in this test went unnoticed because the "magic exit code 117" &&-chain checker built into test-lib.sh only recognizes broken &&-chains at the top-level; it does not work within `{...}` groups, `(...)` subshells, `$(...)` substitutions, or within bodies of compound statements, such as `if`, `for`, `while`, `case`, etc. Furthermore, `chainlint.sed` detects broken &&-chains only in `(...)` subshells. Thus, the &&-chain breaks in this test fall into the blind spots of the &&-chain linters.

Signed-off-by: Eric Sunshine <sunshine@sunshineco.com>
---
 t/t2407-worktree-heads.sh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/t/t2407-worktree-heads.sh b/t/t2407-worktree-heads.sh
index 50815acd3e8..019a40df2ca 100755
--- a/t/t2407-worktree-heads.sh
+++ b/t/t2407-worktree-heads.sh
@@ -41,10 +41,10 @@ test_expect_success 'setup' '
 test_expect_success 'refuse to overwrite: checked out in worktree' '
 	for i in 1 2 3 4
 	do
-		test_must_fail git branch -f wt-$i HEAD 2>err
+		test_must_fail git branch -f wt-$i HEAD 2>err &&
 		grep "cannot force update the branch" err &&
 
-		test_must_fail git branch -D wt-$i 2>err
+		test_must_fail git branch -D wt-$i 2>err &&
 		grep "Cannot delete branch" err || return 1
 	done
 '
-- 
gitgitgadget
Previous: Eric Sunshine via GitGitGadgetNext: Eric Sunshine via GitGitGadget
Message 2 of 10 in “tests: fix broken &&-chains & abort loops on error”
  1. 0/3 tests: fix broken &&-chains & abort loops on errorEric Sunshine via GitGitGadget, Aug 22, 2022
  2. 1/3 t2407: fix broken &&-chains in compound statementEric Sunshine via GitGitGadget, Aug 22, 2022
  3. 2/3 t1092: fix buggy sparse "blame" testEric Sunshine via GitGitGadget, Aug 22, 2022
  4. Derrick StoleeAug 22, 2022
  5. 3/3 t: detect and signal failure within loopEric Sunshine via GitGitGadget, Aug 22, 2022
  6. Junio C HamanoAug 22, 2022
  7. Junio C HamanoAug 22, 2022
  8. Johannes SixtAug 23, 2022
  9. Elijah NewrenAug 23, 2022
  10. Eric SunshineAug 28, 2022

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.