Browse Source
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>maint
Junio C Hamano
16 years ago
11 changed files with 229 additions and 0 deletions
@ -0,0 +1,54 @@
@@ -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 |
@ -0,0 +1,19 @@
@@ -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 |
@ -0,0 +1,21 @@
@@ -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 |
@ -0,0 +1,19 @@
@@ -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 |
@ -0,0 +1,21 @@
@@ -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 |
@ -0,0 +1,19 @@
@@ -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 |
@ -0,0 +1,21 @@
@@ -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 |
@ -0,0 +1,19 @@
@@ -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 |
@ -0,0 +1,22 @@
@@ -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 |
Loading…
Reference in new issue