diff options
author | Martin von Zweigbergk <martinvonz@gmail.com> | 2013-06-06 23:11:39 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2013-06-07 09:41:42 -0700 |
commit | 00b8be5a4d383be1f4b6d0c083d3d4b10f38444b (patch) | |
tree | 4530ad40b2eb50ab3c41c56d6029fcb8d48ea155 /t/t3421-rebase-topology-linear.sh | |
parent | add tests for rebasing with patch-equivalence present (diff) | |
download | tgif-00b8be5a4d383be1f4b6d0c083d3d4b10f38444b.tar.xz |
add tests for rebasing of empty commits
Signed-off-by: Martin von Zweigbergk <martinvonz@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t3421-rebase-topology-linear.sh')
-rwxr-xr-x | t/t3421-rebase-topology-linear.sh | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/t/t3421-rebase-topology-linear.sh b/t/t3421-rebase-topology-linear.sh index ddcbfc6724..f19f0d0346 100755 --- a/t/t3421-rebase-topology-linear.sh +++ b/t/t3421-rebase-topology-linear.sh @@ -160,4 +160,62 @@ test_run_rebase success -m test_run_rebase success -i test_run_rebase success -p +# a---b---c---j! +# \ +# d---k!--l +# +# ! = empty +test_expect_success 'setup of linear history for empty commit tests' ' + git checkout c && + make_empty j && + git checkout d && + make_empty k && + test_commit l +' + +test_run_rebase () { + result=$1 + shift + test_expect_$result "rebase $* drops empty commit" " + reset_rebase && + git rebase $* c l && + test_cmp_rev c HEAD~2 && + test_linear_range 'd l' c.. + " +} +test_run_rebase success '' +test_run_rebase success -m +test_run_rebase success -i +test_run_rebase success -p + +test_run_rebase () { + result=$1 + shift + test_expect_$result "rebase $* --keep-empty" " + reset_rebase && + git rebase $* --keep-empty c l && + test_cmp_rev c HEAD~3 && + test_linear_range 'd k l' c.. + " +} +test_run_rebase success '' +test_run_rebase failure -m +test_run_rebase success -i +test_run_rebase failure -p + +test_run_rebase () { + result=$1 + shift + test_expect_$result "rebase $* --keep-empty keeps empty even if already in upstream" " + reset_rebase && + git rebase $* --keep-empty j l && + test_cmp_rev j HEAD~3 && + test_linear_range 'd k l' j.. + " +} +test_run_rebase success '' +test_run_rebase failure -m +test_run_rebase failure -i +test_run_rebase failure -p + test_done |