summaryrefslogtreecommitdiff
path: root/t/t4130-apply-criss-cross-rename.sh
diff options
context:
space:
mode:
authorMichał Kiedrowicz <michal.kiedrowicz@gmail.com>2009-04-11 17:26:24 +0200
committerJunio C Hamano <gitster@pobox.com>2009-04-20 13:46:55 -0700
commit1d49f0d1a1b7b2941e56cf8384a7a4267e98150c (patch)
tree029215032d0432d0724de8ebc3a0ab9805835e57 /t/t4130-apply-criss-cross-rename.sh
parent1f9b620fdbf27835f54b11008d64c4014b8f4c32 (diff)
downloadgit-1d49f0d1a1b7b2941e56cf8384a7a4267e98150c.tar.gz
tests: test applying criss-cross rename patch
Originally reported by Linus in $gmane/116198 Signed-off-by: Michał Kiedrowicz <michal.kiedrowicz@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t4130-apply-criss-cross-rename.sh')
-rwxr-xr-xt/t4130-apply-criss-cross-rename.sh38
1 files changed, 38 insertions, 0 deletions
diff --git a/t/t4130-apply-criss-cross-rename.sh b/t/t4130-apply-criss-cross-rename.sh
new file mode 100755
index 0000000000..08c5f38b01
--- /dev/null
+++ b/t/t4130-apply-criss-cross-rename.sh
@@ -0,0 +1,38 @@
+#!/bin/sh
+
+test_description='git apply handling criss-cross rename patch.'
+. ./test-lib.sh
+
+create_file() {
+ cnt=0
+ while test $cnt -le 100
+ do
+ cnt=$(($cnt + 1))
+ echo "$2" >> "$1"
+ done
+}
+
+test_expect_success 'setup' '
+ create_file file1 "File1 contents" &&
+ create_file file2 "File2 contents" &&
+ git add file1 file2 &&
+ git commit -m 1
+'
+
+test_expect_success 'criss-cross rename' '
+ mv file1 tmp &&
+ mv file2 file1 &&
+ mv tmp file2
+'
+
+test_expect_success 'diff -M -B' '
+ git diff -M -B > diff &&
+ git reset --hard
+
+'
+
+test_expect_failure 'apply' '
+ git apply diff
+'
+
+test_done