1#!/bin/sh
23
test_description='common tail optimization'
45
. ./test-lib.sh
67
z=zzzzzzzz ;# 8
8z="$z$z$z$z$z$z$z$z" ;# 64
9z="$z$z$z$z$z$z$z$z" ;# 512
10z="$z$z$z$z" ;# 2048
11z2047=$(expr "$z" : '.\(.*\)') ; #2047
1213
test_expect_success setup '
1415
echo "a$z2047" >file-a &&
16echo "b" >file-b &&
17echo "$z2047" >>file-b &&
18echo "c$z2047" | tr -d "\012" >file-c &&
19echo "d" >file-d &&
20echo "$z2047" | tr -d "\012" >>file-d &&
2122
git add file-a file-b file-c file-d &&
2324
echo "A$z2047" >file-a &&
25echo "B" >file-b &&
26echo "$z2047" >>file-b &&
27echo "C$z2047" | tr -d "\012" >file-c &&
28echo "D" >file-d &&
29echo "$z2047" | tr -d "\012" >>file-d
3031
'
3233
cat >expect <<\EOF
34diff --git a/file-a b/file-a
35--- a/file-a
36+++ b/file-a
37@@ -1 +1 @@
38-aZ
39+AZ
40diff --git a/file-b b/file-b
41--- a/file-b
42+++ b/file-b
43@@ -1 +1 @@
44-b
45+B
46diff --git a/file-c b/file-c
47--- a/file-c
48+++ b/file-c
49@@ -1 +1 @@
50-cZ
51\ No newline at end of file
52+CZ
53\ No newline at end of file
54diff --git a/file-d b/file-d
55--- a/file-d
56+++ b/file-d
57@@ -1 +1 @@
58-d
59+D
60EOF
6162
test_expect_success 'diff -U0' '
6364
git diff -U0 | sed -e "/^index/d" -e "s/$z2047/Z/g" >actual &&
65diff -u expect actual
6667
'
6869
test_done