git/t/t4113-apply-ending.sh
Junio C Hamano 65aadb92a1 apply: force matching at the beginning.
When there is no leading context, the patch must match at the
beginning of preimage; otherwise there is a "patch adds these
lines while the other lines were added to the original file"
conflict.

This is the opposite of match_end fix earlier in this series.
Unlike matching at the end case, we can additionally check the
preimage line number recorded in the patch, so the change is not
symmetrical with the earlier one.

Signed-off-by: Junio C Hamano <junkio@cox.net>
2006-05-24 13:23:31 -07:00

54 lines
661 B
Bash
Executable File

#!/bin/sh
#
# Copyright (c) 2006 Catalin Marinas
#
test_description='git-apply trying to add an ending line.
'
. ./test-lib.sh
# setup
cat >test-patch <<\EOF
diff --git a/file b/file
--- a/file
+++ b/file
@@ -1,2 +1,3 @@
a
b
+c
EOF
echo 'a' >file
echo 'b' >>file
echo 'c' >>file
test_expect_success setup \
'git-update-index --add file'
# test
test_expect_failure 'apply at the end' \
'git-apply --index test-patch'
cat >test-patch <<\EOF
diff a/file b/file
--- a/file
+++ b/file
@@ -1,2 +1,3 @@
+a
b
c
EOF
echo >file 'a
b
c'
git-update-index file
test_expect_failure 'apply at the beginning' \
'git-apply --index test-patch'
test_done