tests: simplify by dropping unnecessary for loops

Rather than manually looping over a set of items and plugging those
items into a template string which is printed repeatedly, achieve the
same effect by taking advantage of `printf` which loops over its
arguments automatically.

Signed-off-by: Eric Sunshine <sunshine@sunshineco.com>
Reviewed-by: Elijah Newren <newren@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Eric Sunshine 2021-12-09 00:11:11 -05:00 committed by Junio C Hamano
parent 03949e33f5
commit efe26b9ee0
7 changed files with 14 additions and 50 deletions

View File

@ -39,10 +39,7 @@ test_expect_success 'ls-files with mixed levels' '
test_expect_success 'ls-files -c' ' test_expect_success 'ls-files -c' '
( (
cd top/sub && cd top/sub &&
for f in ../y* printf "error: pathspec $SQ%s$SQ did not match any file(s) known to git\n" ../y* >expect.err &&
do
echo "error: pathspec $SQ$f$SQ did not match any file(s) known to git"
done >expect.err &&
echo "Did you forget to ${SQ}git add${SQ}?" >>expect.err && echo "Did you forget to ${SQ}git add${SQ}?" >>expect.err &&
ls ../x* >expect.out && ls ../x* >expect.out &&
test_must_fail git ls-files -c --error-unmatch ../[xy]* >actual.out 2>actual.err && test_must_fail git ls-files -c --error-unmatch ../[xy]* >actual.out 2>actual.err &&
@ -54,10 +51,7 @@ test_expect_success 'ls-files -c' '
test_expect_success 'ls-files -o' ' test_expect_success 'ls-files -o' '
( (
cd top/sub && cd top/sub &&
for f in ../x* printf "error: pathspec $SQ%s$SQ did not match any file(s) known to git\n" ../x* >expect.err &&
do
echo "error: pathspec $SQ$f$SQ did not match any file(s) known to git"
done >expect.err &&
echo "Did you forget to ${SQ}git add${SQ}?" >>expect.err && echo "Did you forget to ${SQ}git add${SQ}?" >>expect.err &&
ls ../y* >expect.out && ls ../y* >expect.out &&
test_must_fail git ls-files -o --error-unmatch ../[xy]* >actual.out 2>actual.err && test_must_fail git ls-files -o --error-unmatch ../[xy]* >actual.out 2>actual.err &&

View File

@ -274,10 +274,7 @@ test_expect_success 'Resolving by removal is not a warning-worthy event' '
git reset -q --hard && git reset -q --hard &&
test_when_finished "rm -f .git/index.lock msg && git reset -q --hard" && test_when_finished "rm -f .git/index.lock msg && git reset -q --hard" &&
blob=$(echo blob | git hash-object -w --stdin) && blob=$(echo blob | git hash-object -w --stdin) &&
for stage in 1 2 3 printf "100644 $blob %d\tblob\n" 1 2 3 | git update-index --index-info &&
do
echo "100644 $blob $stage blob"
done | git update-index --index-info &&
git rm blob >msg 2>&1 && git rm blob >msg 2>&1 &&
test_i18ngrep ! "needs merge" msg && test_i18ngrep ! "needs merge" msg &&
test_must_fail git ls-files -s --error-unmatch blob test_must_fail git ls-files -s --error-unmatch blob

View File

@ -14,15 +14,9 @@ test_expect_success setup '
( (
echo "A $NS" && echo "A $NS" &&
for c in B C D E F G H I J K printf " %s\n" B C D E F G H I J K &&
do
echo " $c"
done &&
echo "L $NS" && echo "L $NS" &&
for c in M N O P Q R S T U V printf " %s\n" M N O P Q R S T U V
do
echo " $c"
done
) >file && ) >file &&
git add file && git add file &&

View File

@ -10,10 +10,7 @@ test_expect_success setup '
git add file && git add file &&
# file-0 is full of whitespace breakages # file-0 is full of whitespace breakages
for l in a bb c d eeee f ggg h printf "%s \n" a bb c d eeee f ggg h >file-0 &&
do
echo "$l "
done >file-0 &&
# patch-0 creates a whitespace broken file # patch-0 creates a whitespace broken file
cat file-0 >file && cat file-0 >file &&

View File

@ -24,14 +24,8 @@ test_expect_success 'setup basic criss-cross + rename with no modifications' '
cd basic-rename && cd basic-rename &&
ten="0 1 2 3 4 5 6 7 8 9" && ten="0 1 2 3 4 5 6 7 8 9" &&
for i in $ten printf "line %d in a sample file\n" $ten >one &&
do printf "line %d in another sample file\n" $ten >two &&
echo line $i in a sample file
done >one &&
for i in $ten
do
echo line $i in another sample file
done >two &&
git add one two && git add one two &&
test_tick && git commit -m initial && test_tick && git commit -m initial &&
@ -96,14 +90,8 @@ test_expect_success 'setup criss-cross + rename merges with basic modification'
cd rename-modify && cd rename-modify &&
ten="0 1 2 3 4 5 6 7 8 9" && ten="0 1 2 3 4 5 6 7 8 9" &&
for i in $ten printf "line %d in a sample file\n" $ten >one &&
do printf "line %d in another sample file\n" $ten >two &&
echo line $i in a sample file
done >one &&
for i in $ten
do
echo line $i in another sample file
done >two &&
git add one two && git add one two &&
test_tick && git commit -m initial && test_tick && git commit -m initial &&
@ -1588,10 +1576,7 @@ test_expect_success 'setup nested conflicts' '
cd nested_conflicts && cd nested_conflicts &&
# Create some related files now # Create some related files now
for i in $(test_seq 1 10) printf "Random base content line %d\n" $(test_seq 1 10) >initial &&
do
echo Random base content line $i
done >initial &&
cp initial b_L1 && cp initial b_L1 &&
cp initial b_R1 && cp initial b_R1 &&
@ -1777,10 +1762,7 @@ test_expect_success 'setup virtual merge base with nested conflicts' '
cd virtual_merge_base_has_nested_conflicts && cd virtual_merge_base_has_nested_conflicts &&
# Create some related files now # Create some related files now
for i in $(test_seq 1 10) printf "Random base content line %d\n" $(test_seq 1 10) >content &&
do
echo Random base content line $i
done >content &&
# Setup original commit # Setup original commit
git add content && git add content &&

View File

@ -8,7 +8,7 @@ test_description='Tests for "git reset" with "--merge" and "--keep" options'
. ./test-lib.sh . ./test-lib.sh
test_expect_success setup ' test_expect_success setup '
for i in 1 2 3; do echo line $i; done >file1 && printf "line %d\n" 1 2 3 >file1 &&
cat file1 >file2 && cat file1 >file2 &&
git add file1 file2 && git add file1 file2 &&
test_tick && test_tick &&

View File

@ -591,7 +591,7 @@ test_expect_success 'cvs annotate' '
cd cvswork && cd cvswork &&
GIT_CONFIG="$git_config" cvs annotate merge >../out && GIT_CONFIG="$git_config" cvs annotate merge >../out &&
sed -e "s/ .*//" ../out >../actual && sed -e "s/ .*//" ../out >../actual &&
for i in 3 1 1 1 1 1 1 1 2 4; do echo 1.$i; done >../expect && printf "1.%d\n" 3 1 1 1 1 1 1 1 2 4 >../expect &&
test_cmp ../expect ../actual test_cmp ../expect ../actual
' '