@matheusbsbs / matheus-bagliano / commits / 41872fd573
Fork 0

t4127-apply-same-fn: Avoid sed -i

Signed-off-by: Johannes Sixt <johannes.sixt@telecom.at> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Johannes Sixt committed Jul 4, 2008 at 08:43 UTC 41872fd573601b123da00294f77d7d4c25db6010
1 file changed +16 -11
t/t4127-apply-same-fn.sh
+16 -11
@@ -4,6 +4,11 @@ test_description='apply same filename'
4
5 . ./test-lib.sh
6
7 +modify () {
8 + sed -e "$1" < "$2" > "$2".x &&
9 + mv "$2".x "$2"
10 +}
11 +
12 test_expect_success setup '
13 for i in a b c d e f g h i j k l m
14 do
@@ -14,10 +19,10 @@ test_expect_success setup '
19 git commit -m initial
20 '
21 test_expect_success 'apply same filename with independent changes' '
17 - sed -i -e "s/^d/z/" same_fn &&
22 + modify "s/^d/z/" same_fn &&
23 git diff > patch0 &&
24 git add same_fn &&
20 - sed -i -e "s/^i/y/" same_fn &&
25 + modify "s/^i/y/" same_fn &&
26 git diff >> patch0 &&
27 cp same_fn same_fn2 &&
28 git reset --hard &&
@@ -27,10 +32,10 @@ test_expect_success 'apply same filename with independent changes' '
32
33 test_expect_success 'apply same filename with overlapping changes' '
34 git reset --hard
30 - sed -i -e "s/^d/z/" same_fn &&
35 + modify "s/^d/z/" same_fn &&
36 git diff > patch0 &&
37 git add same_fn &&
33 - sed -i -e "s/^e/y/" same_fn &&
38 + modify "s/^e/y/" same_fn &&
39 git diff >> patch0 &&
40 cp same_fn same_fn2 &&
41 git reset --hard &&
@@ -41,10 +46,10 @@ test_expect_success 'apply same filename with overlapping changes' '
46 test_expect_success 'apply same new filename after rename' '
47 git reset --hard
48 git mv same_fn new_fn
44 - sed -i -e "s/^d/z/" new_fn &&
49 + modify "s/^d/z/" new_fn &&
50 git add new_fn &&
51 git diff -M --cached > patch1 &&
47 - sed -i -e "s/^e/y/" new_fn &&
52 + modify "s/^e/y/" new_fn &&
53 git diff >> patch1 &&
54 cp new_fn new_fn2 &&
55 git reset --hard &&
@@ -55,11 +60,11 @@ test_expect_success 'apply same new filename after rename' '
60 test_expect_success 'apply same old filename after rename -- should fail.' '
61 git reset --hard
62 git mv same_fn new_fn
58 - sed -i -e "s/^d/z/" new_fn &&
63 + modify "s/^d/z/" new_fn &&
64 git add new_fn &&
65 git diff -M --cached > patch1 &&
66 git mv new_fn same_fn
62 - sed -i -e "s/^e/y/" same_fn &&
67 + modify "s/^e/y/" same_fn &&
68 git diff >> patch1 &&
69 git reset --hard &&
70 test_must_fail git apply patch1
@@ -68,15 +73,15 @@ test_expect_success 'apply same old filename after rename -- should fail.' '
73 test_expect_success 'apply A->B (rename), C->A (rename), A->A -- should pass.' '
74 git reset --hard
75 git mv same_fn new_fn
71 - sed -i -e "s/^d/z/" new_fn &&
76 + modify "s/^d/z/" new_fn &&
77 git add new_fn &&
78 git diff -M --cached > patch1 &&
79 git commit -m "a rename" &&
80 git mv other_fn same_fn
76 - sed -i -e "s/^e/y/" same_fn &&
81 + modify "s/^e/y/" same_fn &&
82 git add same_fn &&
83 git diff -M --cached >> patch1 &&
79 - sed -i -e "s/^g/x/" same_fn &&
84 + modify "s/^g/x/" same_fn &&
85 git diff >> patch1 &&
86 git reset --hard HEAD^ &&
87 git apply patch1