]> git.ipfire.org Git - thirdparty/git.git/commitdiff
t4108: demonstrate bug in apply
authorDenton Liu <liu.denton@gmail.com>
Wed, 23 Oct 2019 23:32:36 +0000 (16:32 -0700)
committerJunio C Hamano <gitster@pobox.com>
Thu, 24 Oct 2019 02:32:53 +0000 (11:32 +0900)
Currently, apply does not respect the merge.conflictStyle setting.
Demonstrate this by making the 'apply with --3way' test case generic and
extending it to show that the configuration of
merge.conflictStyle = diff3 causes a breakage.

Change print_sanitized_conflicted_diff() to also sanitize `|||||||`
conflict markers.

Signed-off-by: Denton Liu <liu.denton@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t4108-apply-threeway.sh

index 7f96ae9101ad674f81838a13386ce618b03c9a32..bffe37f1baa1f0dbeb0710ab511c38deed247339 100755 (executable)
@@ -8,7 +8,7 @@ print_sanitized_conflicted_diff () {
        git diff HEAD >diff.raw &&
        sed -e '
                /^index /d
-               s/^\(+[<>][<>][<>][<>]*\) .*/\1/
+               s/^\(+[<>|][<>|][<>|][<>|]*\) .*/\1/
        ' diff.raw
 }
 
@@ -46,7 +46,7 @@ test_expect_success 'apply without --3way' '
        git diff-index --exit-code --cached HEAD
 '
 
-test_expect_success 'apply with --3way' '
+test_apply_with_3way () {
        # Merging side should be similar to applying this patch
        git diff ...side >P.diff &&
 
@@ -67,6 +67,15 @@ test_expect_success 'apply with --3way' '
        # The result should resemble the corresponding merge
        test_cmp expect.ls actual.ls &&
        test_cmp expect.diff actual.diff
+}
+
+test_expect_success 'apply with --3way' '
+       test_apply_with_3way
+'
+
+test_expect_failure 'apply with --3way with merge.conflictStyle = diff3' '
+       test_config merge.conflictStyle diff3 &&
+       test_apply_with_3way
 '
 
 test_expect_success 'apply with --3way with rerere enabled' '