Ævar Arnfjörð Bjarmason [off-list ref] writes:
+# check each individual file
+for i in $(git -C t4018 ls-files)
+do
+ test_expect_success "setup hunk header: $i" "
+ grep -v '^t4018' \"t4018/$i\" >\"t4018/$i.content\" &&
+ sed -n -e 's/^t4018 header: //p' <\"t4018/$i\" >\"t4018/$i.header\" &&
+ cp \"t4018/$i.content\" \"$i\" &&
# add test file to the index
- git add "$i" &&
+ git add \"$i\" &&
# place modified file in the worktree
- sed -e "s/ChangeMe/IWasChanged/" <"t4018/$i.content" >"$i" || return 1
- done
-'
+ sed -e 's/ChangeMe/IWasChanged/' <\"t4018/$i.content\" >\"$i\"
+ "
Please use '' around the second argument (i.e. test body) of the
test_expect_success, and use "" inside it. "$i" that is used in the
loop is visible perfectly fine inside the test body when it is
eval'ed, and we won't have to count ugly backslashes that way.
-# check each individual file
-for i in $(git ls-files)
-do
test_expect_success "hunk header: $i" "
git diff -U1 $i >diff &&
sed -n -e 's/^.*@@$//p' -e 's/^.*@@ //p' <diff >ctx &&