Browse Source

t3701: clean up hunk splitting tests

Clean up some test constructs in preparation for extending the tests
in the next commit. There are three small changes, I've grouped them
together as they're so small it didn't seem worth creating three
separate commits.
 1 - "cat file | sed expression" is better written as
     "sed expression file".
 2 - Follow our usual practice of redirecting the output of git
     commands to a file rather than piping it into another command.
 3 - Use test_write_lines rather than 'printf "%s\n"'.

Signed-off-by: Phillip Wood <phillip.wood@dunelm.org.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Phillip Wood 3 years ago committed by Junio C Hamano
parent
commit
d16632f694
  1. 8
      t/t3701-add-interactive.sh

8
t/t3701-add-interactive.sh

@ -347,7 +347,7 @@ test_expect_success 'setup patch' ' @@ -347,7 +347,7 @@ test_expect_success 'setup patch' '
# Expected output, diff is similar to the patch but w/ diff at the top
test_expect_success 'setup expected' '
echo diff --git a/file b/file >expected &&
cat patch |sed "/^index/s/ 100644/ 100755/" >>expected &&
sed "/^index/s/ 100644/ 100755/" patch >>expected &&
cat >expected-output <<-\EOF
--- a/file
+++ b/file
@ -373,9 +373,9 @@ test_expect_success 'setup expected' ' @@ -373,9 +373,9 @@ test_expect_success 'setup expected' '
test_expect_success 'add first line works' '
git commit -am "clear local changes" &&
git apply patch &&
printf "%s\n" s y y | git add -p file 2>error |
sed -n -e "s/^([1-2]\/[1-2]) Stage this hunk[^@]*\(@@ .*\)/\1/" \
-e "/^[-+@ \\\\]"/p >output &&
test_write_lines s y y | git add -p file 2>error >raw-output &&
sed -n -e "s/^([1-2]\/[1-2]) Stage this hunk[^@]*\(@@ .*\)/\1/" \
-e "/^[-+@ \\\\]"/p raw-output >output &&
test_must_be_empty error &&
git diff --cached >diff &&
diff_cmp expected diff &&

Loading…
Cancel
Save