Re: [PATCH 1/2] t3701: clean up hunk splitting tests
From: Junio C Hamano <hidden>
Date: 2021-12-20 21:09:58
"Phillip Wood via GitGitGadget" [off-list ref] writes:
From: Phillip Wood <redacted>
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"'.All good points. Somehow people seem to forget "do not cat a single file into a pipe".
quoted hunk
@@ -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 &&
Looks good. Thanks.