mirror of
https://github.com/git/git
synced 2024-08-24 18:26:02 +00:00
t4108: remove git command upstream of pipe
Before, the output of `git diff HEAD` would always be piped to sanitize_conflicted_diff(). However, since the Git command was upstream of the pipe, in case the Git command fails, the return code would be lost. Rewrite into separate statements so that the return code is no longer lost. Since only the command `git diff HEAD` was being piped to sanitize_conflicted_diff(), move the command into the function and rename it to print_sanitized_conflicted_diff(). Signed-off-by: Denton Liu <liu.denton@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
fa87b81385
commit
b0069684d4
|
@ -4,11 +4,12 @@ test_description='git apply --3way'
|
|||
|
||||
. ./test-lib.sh
|
||||
|
||||
sanitize_conflicted_diff () {
|
||||
print_sanitized_conflicted_diff () {
|
||||
git diff HEAD >diff.raw &&
|
||||
sed -e '
|
||||
/^index /d
|
||||
s/^\(+[<>][<>][<>][<>]*\) .*/\1/
|
||||
'
|
||||
' diff.raw
|
||||
}
|
||||
|
||||
test_expect_success setup '
|
||||
|
@ -54,14 +55,14 @@ test_expect_success 'apply with --3way' '
|
|||
git checkout master^0 &&
|
||||
test_must_fail git merge --no-commit side &&
|
||||
git ls-files -s >expect.ls &&
|
||||
git diff HEAD | sanitize_conflicted_diff >expect.diff &&
|
||||
print_sanitized_conflicted_diff >expect.diff &&
|
||||
|
||||
# should fail to apply
|
||||
git reset --hard &&
|
||||
git checkout master^0 &&
|
||||
test_must_fail git apply --index --3way P.diff &&
|
||||
git ls-files -s >actual.ls &&
|
||||
git diff HEAD | sanitize_conflicted_diff >actual.diff &&
|
||||
print_sanitized_conflicted_diff >actual.diff &&
|
||||
|
||||
# The result should resemble the corresponding merge
|
||||
test_cmp expect.ls actual.ls &&
|
||||
|
@ -114,7 +115,7 @@ test_expect_success 'apply -3 with add/add conflict setup' '
|
|||
git checkout adder^0 &&
|
||||
test_must_fail git merge --no-commit another &&
|
||||
git ls-files -s >expect.ls &&
|
||||
git diff HEAD | sanitize_conflicted_diff >expect.diff
|
||||
print_sanitized_conflicted_diff >expect.diff
|
||||
'
|
||||
|
||||
test_expect_success 'apply -3 with add/add conflict' '
|
||||
|
@ -124,7 +125,7 @@ test_expect_success 'apply -3 with add/add conflict' '
|
|||
test_must_fail git apply --index --3way P.diff &&
|
||||
# ... and leave conflicts in the index and in the working tree
|
||||
git ls-files -s >actual.ls &&
|
||||
git diff HEAD | sanitize_conflicted_diff >actual.diff &&
|
||||
print_sanitized_conflicted_diff >actual.diff &&
|
||||
|
||||
# The result should resemble the corresponding merge
|
||||
test_cmp expect.ls actual.ls &&
|
||||
|
|
Loading…
Reference in a new issue