Since we've added the --allow-empty and --keep-redundant-commits
options to git cherry-pick we should also add a test to ensure that its working
properly
Signed-off-by: Neil Horman <nhorman@tuxdriver.com>
---
t/t3505-cherry-pick-empty.sh | 31 ++++++++++++++++++++++++++++++-
1 files changed, 30 insertions(+), 1 deletions(-)
diff --git a/t/t3505-cherry-pick-empty.sh b/t/t3505-cherry-pick-empty.sh
index c10b28c..9d419ae 100755
--- a/t/t3505-cherry-pick-empty.sh
+++ b/t/t3505-cherry-pick-empty.sh
@@ -18,7 +18,12 @@ test_expect_success setup '
echo third >> file1 &&
git add file1 &&
test_tick &&
- git commit --allow-empty-message -m ""
+ git commit --allow-empty-message -m "" &&
+
+ git checkout master &&
+ git checkout -b empty-branch2 &&
+ test_tick &&
+ git commit --allow-empty -m "empty"
'
@@ -48,4 +53,28 @@ test_expect_success 'index lockfile was removed' '
'
+test_expect_success 'cherry pick an empty non-ff commit without --allow-empty' '
+ git checkout master &&
+ echo fourth >> file2 &&
+ git add file2 &&
+ git commit -m "fourth" && {
+ git cherry-pick empty-branch2
+ test "$?" = 1
+ }
+'
+
+test_expect_success 'cherry pick an empty non-ff commit with --allow-empty' '
+ git checkout master && {
+ git cherry-pick --allow-empty empty-branch2
+ test "$?" = 0
+ }
+'
+
+test_expect_success 'cherry pick with --keep-redundant-commits' '
+ git checkout master && {
+ git cherry-pick --keep-redundant-commits HEAD^
+ test "$?" = 0
+ }
+'
+
test_done--
1.7.7.6