# Copyright (c) 2005 Junio C Hamano
#
-test_description='git-apply in reverse
+test_description='git apply in reverse
'
test_expect_success setup '
for i in a b c d e f g h i j k l m n; do echo $i; done >file1 &&
- tr "[ijk]" '\''[\0\1\2]'\'' <file1 >file2 &&
+ tr "ijk" '\''\000\001\002'\'' <file1 >file2 &&
git add file1 file2 &&
git commit -m initial &&
git tag initial &&
for i in a b c g h i J K L m o n p q; do echo $i; done >file1 &&
- tr "[mon]" '\''[\0\1\2]'\'' <file1 >file2 &&
+ tr "mon" '\''\000\001\002'\'' <file1 >file2 &&
git commit -a -m second &&
git tag second &&
git reset --hard second &&
git apply --reverse --binary --index patch &&
git diff >diff &&
- diff -u /dev/null diff
+ git diff /dev/null diff
'
git tar-tree initial initial | tar xf - &&
(
- cd initial && git_init_db && git add .
+ cd initial && git init && git add .
) &&
git tar-tree second second | tar xf - &&
(
- cd second && git_init_db && git add .
+ cd second && git init && git add .
)
'
)
'
+test_expect_success 'reversing a whitespace introduction' '
+ sed "s/a/a /" < file1 > file1.new &&
+ mv file1.new file1 &&
+ git diff | git apply --reverse --whitespace=error
+'
+
test_done