1#!/bin/sh
2#
3# Copyright (c) 2006 Junio C Hamano
4#
5
6test_description='git apply with new style GNU diff with empty context
7
8'
9
10. ./test-lib.sh
11
12test_expect_success setup '
13 {
14 echo; echo;
15 echo A; echo B; echo C;
16 echo;
17 } >file1 &&
18 cat file1 >file1.orig &&
19 {
20 cat file1 &&
21 echo Q | tr -d "\\012"
22 } >file2 &&
23 cat file2 >file2.orig &&
24 git add file1 file2 &&
25 sed -e "/^B/d" <file1.orig >file1 &&
26 cat file1 > file2 &&
27 echo Q | tr -d "\\012" >>file2 &&
28 cat file1 >file1.mods &&
29 cat file2 >file2.mods &&
30 git diff |
31 sed -e "s/^ \$//" >diff.output
32'
33
34test_expect_success 'apply --numstat' '
35
36 git apply --numstat diff.output >actual &&
37 {
38 echo "0 1 file1" &&
39 echo "0 1 file2"
40 } >expect &&
41 test_cmp expect actual
42
43'
44
45test_expect_success 'apply --apply' '
46
47 cat file1.orig >file1 &&
48 cat file2.orig >file2 &&
49 git update-index file1 file2 &&
50 git apply --index diff.output &&
51 test_cmp file1.mods file1 &&
52 test_cmp file2.mods file2
53'
54
55test_done