Test that git-am does not lose -C/-p/--whitespace options
These tests make sure that "git am" does not lose command line options specified when it was started, after it is interrupted by a patch that does not apply earlier in the series. Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
22db240dd1
commit
fe6beab7e8
54
t/t4252-am-options.sh
Executable file
54
t/t4252-am-options.sh
Executable file
@ -0,0 +1,54 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
test_description='git am not losing options'
|
||||||
|
. ./test-lib.sh
|
||||||
|
|
||||||
|
tm="$TEST_DIRECTORY/t4252"
|
||||||
|
|
||||||
|
test_expect_success setup '
|
||||||
|
cp "$tm/file-1-0" file-1 &&
|
||||||
|
cp "$tm/file-2-0" file-2 &&
|
||||||
|
git add file-1 file-2 &&
|
||||||
|
test_tick &&
|
||||||
|
git commit -m initial &&
|
||||||
|
git tag initial
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success 'interrupted am --whitespace=fix' '
|
||||||
|
rm -rf .git/rebase-apply &&
|
||||||
|
git reset --hard initial &&
|
||||||
|
test_must_fail git am --whitespace=fix "$tm"/am-test-1-? &&
|
||||||
|
git am --skip &&
|
||||||
|
grep 3 file-1 &&
|
||||||
|
grep "^Six$" file-2
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success 'interrupted am -C1' '
|
||||||
|
rm -rf .git/rebase-apply &&
|
||||||
|
git reset --hard initial &&
|
||||||
|
test_must_fail git am -C1 "$tm"/am-test-2-? &&
|
||||||
|
git am --skip &&
|
||||||
|
grep 3 file-1 &&
|
||||||
|
grep "^Three$" file-2
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success 'interrupted am -p2' '
|
||||||
|
rm -rf .git/rebase-apply &&
|
||||||
|
git reset --hard initial &&
|
||||||
|
test_must_fail git am -p2 "$tm"/am-test-3-? &&
|
||||||
|
git am --skip &&
|
||||||
|
grep 3 file-1 &&
|
||||||
|
grep "^Three$" file-2
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success 'interrupted am -C1 -p2' '
|
||||||
|
rm -rf .git/rebase-apply &&
|
||||||
|
git reset --hard initial &&
|
||||||
|
test_must_fail git am -p2 -C1 "$tm"/am-test-4-? &&
|
||||||
|
cat .git/rebase-apply/apply_opt_extra &&
|
||||||
|
git am --skip &&
|
||||||
|
grep 3 file-1 &&
|
||||||
|
grep "^Three$" file-2
|
||||||
|
'
|
||||||
|
|
||||||
|
test_done
|
19
t/t4252/am-test-1-1
Normal file
19
t/t4252/am-test-1-1
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
From: A U Thor <au.thor@example.com>
|
||||||
|
Date: Thu Dec 4 16:00:00 2008 -0800
|
||||||
|
Subject: Three
|
||||||
|
|
||||||
|
Application of this should be rejected because the first line in the
|
||||||
|
context does not match.
|
||||||
|
|
||||||
|
diff --git i/file-1 w/file-1
|
||||||
|
index 06e567b..10f8342 100644
|
||||||
|
--- i/file-1
|
||||||
|
+++ w/file-1
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
One
|
||||||
|
2
|
||||||
|
-3
|
||||||
|
+Three
|
||||||
|
4
|
||||||
|
5
|
||||||
|
6
|
21
t/t4252/am-test-1-2
Normal file
21
t/t4252/am-test-1-2
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
From: A U Thor <au.thor@example.com>
|
||||||
|
Date: Thu Dec 4 16:00:00 2008 -0800
|
||||||
|
Subject: Six
|
||||||
|
|
||||||
|
Applying this patch with --whitespace=fix should lose
|
||||||
|
the trailing whitespace after "Six".
|
||||||
|
|
||||||
|
diff --git i/file-2 w/file-2
|
||||||
|
index 06e567b..b6f3a16 100644
|
||||||
|
--- i/file-2
|
||||||
|
+++ w/file-2
|
||||||
|
@@ -1,7 +1,7 @@
|
||||||
|
1
|
||||||
|
2
|
||||||
|
-3
|
||||||
|
+Three
|
||||||
|
4
|
||||||
|
5
|
||||||
|
-6
|
||||||
|
+Six
|
||||||
|
7
|
19
t/t4252/am-test-2-1
Normal file
19
t/t4252/am-test-2-1
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
From: A U Thor <au.thor@example.com>
|
||||||
|
Date: Thu Dec 4 16:00:00 2008 -0800
|
||||||
|
Subject: Three
|
||||||
|
|
||||||
|
Application of this should be rejected even with -C1 because the
|
||||||
|
preimage line in the context does not match.
|
||||||
|
|
||||||
|
diff --git i/file-1 w/file-1
|
||||||
|
index 06e567b..10f8342 100644
|
||||||
|
--- i/file-1
|
||||||
|
+++ w/file-1
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
1
|
||||||
|
2
|
||||||
|
-Tres
|
||||||
|
+Three
|
||||||
|
4
|
||||||
|
5
|
||||||
|
6
|
21
t/t4252/am-test-2-2
Normal file
21
t/t4252/am-test-2-2
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
From: A U Thor <au.thor@example.com>
|
||||||
|
Date: Thu Dec 4 16:00:00 2008 -0800
|
||||||
|
Subject: Six
|
||||||
|
|
||||||
|
Applying this patch with -C1 should be successful even though
|
||||||
|
the first line in the context does not match.
|
||||||
|
|
||||||
|
diff --git i/file-2 w/file-2
|
||||||
|
index 06e567b..b6f3a16 100644
|
||||||
|
--- i/file-2
|
||||||
|
+++ w/file-2
|
||||||
|
@@ -1,7 +1,7 @@
|
||||||
|
One
|
||||||
|
2
|
||||||
|
-3
|
||||||
|
+Three
|
||||||
|
4
|
||||||
|
5
|
||||||
|
-6
|
||||||
|
+Six
|
||||||
|
7
|
19
t/t4252/am-test-3-1
Normal file
19
t/t4252/am-test-3-1
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
From: A U Thor <au.thor@example.com>
|
||||||
|
Date: Thu Dec 4 16:00:00 2008 -0800
|
||||||
|
Subject: Three
|
||||||
|
|
||||||
|
Application of this should be rejected even with -p2 because the
|
||||||
|
preimage line in the context does not match.
|
||||||
|
|
||||||
|
diff --git i/junk/file-1 w/junk/file-1
|
||||||
|
index 06e567b..10f8342 100644
|
||||||
|
--- i/junk/file-1
|
||||||
|
+++ w/junk/file-1
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
1
|
||||||
|
2
|
||||||
|
-Tres
|
||||||
|
+Three
|
||||||
|
4
|
||||||
|
5
|
||||||
|
6
|
21
t/t4252/am-test-3-2
Normal file
21
t/t4252/am-test-3-2
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
From: A U Thor <au.thor@example.com>
|
||||||
|
Date: Thu Dec 4 16:00:00 2008 -0800
|
||||||
|
Subject: Six
|
||||||
|
|
||||||
|
Applying this patch with -p2 should be successful even though
|
||||||
|
the patch is against a wrong level.
|
||||||
|
|
||||||
|
diff --git i/junk/file-2 w/junk/file-2
|
||||||
|
index 06e567b..b6f3a16 100644
|
||||||
|
--- i/junk/file-2
|
||||||
|
+++ w/junk/file-2
|
||||||
|
@@ -1,7 +1,7 @@
|
||||||
|
1
|
||||||
|
2
|
||||||
|
-3
|
||||||
|
+Three
|
||||||
|
4
|
||||||
|
5
|
||||||
|
-6
|
||||||
|
+Six
|
||||||
|
7
|
19
t/t4252/am-test-4-1
Normal file
19
t/t4252/am-test-4-1
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
From: A U Thor <au.thor@example.com>
|
||||||
|
Date: Thu Dec 4 16:00:00 2008 -0800
|
||||||
|
Subject: Three
|
||||||
|
|
||||||
|
Application of this should be rejected even with -C1 -p2 because
|
||||||
|
the preimage line in the context does not match.
|
||||||
|
|
||||||
|
diff --git i/junk/file-1 w/junk/file-1
|
||||||
|
index 06e567b..10f8342 100644
|
||||||
|
--- i/junk/file-1
|
||||||
|
+++ w/junk/file-1
|
||||||
|
@@ -1,6 +1,6 @@
|
||||||
|
1
|
||||||
|
2
|
||||||
|
-Tres
|
||||||
|
+Three
|
||||||
|
4
|
||||||
|
5
|
||||||
|
6
|
22
t/t4252/am-test-4-2
Normal file
22
t/t4252/am-test-4-2
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
From: A U Thor <au.thor@example.com>
|
||||||
|
Date: Thu Dec 4 16:00:00 2008 -0800
|
||||||
|
Subject: Six
|
||||||
|
|
||||||
|
Applying this patch with -C1 -p2 should be successful even though
|
||||||
|
the patch is against a wrong level and the first context line does
|
||||||
|
not match.
|
||||||
|
|
||||||
|
diff --git i/junk/file-2 w/junk/file-2
|
||||||
|
index 06e567b..b6f3a16 100644
|
||||||
|
--- i/junk/file-2
|
||||||
|
+++ w/junk/file-2
|
||||||
|
@@ -1,7 +1,7 @@
|
||||||
|
One
|
||||||
|
2
|
||||||
|
-3
|
||||||
|
+Three
|
||||||
|
4
|
||||||
|
5
|
||||||
|
-6
|
||||||
|
+Six
|
||||||
|
7
|
7
t/t4252/file-1-0
Normal file
7
t/t4252/file-1-0
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
1
|
||||||
|
2
|
||||||
|
3
|
||||||
|
4
|
||||||
|
5
|
||||||
|
6
|
||||||
|
7
|
7
t/t4252/file-2-0
Normal file
7
t/t4252/file-2-0
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
1
|
||||||
|
2
|
||||||
|
3
|
||||||
|
4
|
||||||
|
5
|
||||||
|
6
|
||||||
|
7
|
Loading…
x
Reference in New Issue
Block a user