From: Martin von Zweigbergk <martinvonz@gmail.com>
To: git@vger.kernel.org
Cc: Junio C Hamano <gitster@pobox.com>,
Johannes Sixt <j.sixt@viscovery.net>,
Chris Webb <chris@arachsys.com>,
Felipe Contreras <felipe.contreras@gmail.com>,
Martin von Zweigbergk <martinvonz@gmail.com>
Subject: [PATCH v2 3/7] add tests for rebasing of empty commits
Date: Tue, 28 May 2013 23:39:28 -0700 [thread overview]
Message-ID: <1369809572-24431-4-git-send-email-martinvonz@gmail.com> (raw)
In-Reply-To: <1369809572-24431-1-git-send-email-martinvonz@gmail.com>
---
t/t3401-rebase-partial.sh | 24 ----------------
t/t3420-rebase-topology-linear.sh | 58 +++++++++++++++++++++++++++++++++++++++
2 files changed, 58 insertions(+), 24 deletions(-)
diff --git a/t/t3401-rebase-partial.sh b/t/t3401-rebase-partial.sh
index 58f4823..7ba1797 100755
--- a/t/t3401-rebase-partial.sh
+++ b/t/t3401-rebase-partial.sh
@@ -42,28 +42,4 @@ test_expect_success 'rebase --merge topic branch that was partially merged upstr
test_path_is_missing .git/rebase-merge
'
-test_expect_success 'rebase ignores empty commit' '
- git reset --hard A &&
- git commit --allow-empty -m empty &&
- test_commit D &&
- git rebase C &&
- test "$(git log --format=%s C..)" = "D"
-'
-
-test_expect_success 'rebase --keep-empty' '
- git reset --hard D &&
- git rebase --keep-empty C &&
- test "$(git log --format=%s C..)" = "D
-empty"
-'
-
-test_expect_success 'rebase --keep-empty keeps empty even if already in upstream' '
- git reset --hard A &&
- git commit --allow-empty -m also-empty &&
- git rebase --keep-empty D &&
- test "$(git log --format=%s A..)" = "also-empty
-D
-empty"
-'
-
test_done
diff --git a/t/t3420-rebase-topology-linear.sh b/t/t3420-rebase-topology-linear.sh
index 1152491..40fe264 100755
--- a/t/t3420-rebase-topology-linear.sh
+++ b/t/t3420-rebase-topology-linear.sh
@@ -160,4 +160,62 @@ test_run_rebase failure -m
test_run_rebase failure -i
test_run_rebase failure -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
--
1.8.2.674.gd17d3d2
next prev parent reply other threads:[~2013-05-29 6:40 UTC|newest]
Thread overview: 75+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-09-18 6:31 [RFC PATCH] add t3420-rebase-topology Martin von Zweigbergk
2012-09-18 7:51 ` Junio C Hamano
2012-09-21 17:06 ` Martin von Zweigbergk
2012-09-18 7:53 ` Johannes Sixt
2012-09-26 17:07 ` Martin von Zweigbergk
2012-09-27 12:20 ` Chris Webb
2012-09-28 18:03 ` Martin von Zweigbergk
2012-09-29 8:08 ` Chris Webb
2013-05-29 6:39 ` [PATCH v2 0/7] Rebase topology test Martin von Zweigbergk
2013-05-29 6:39 ` [PATCH v2 1/7] add simple tests of consistency across rebase types Martin von Zweigbergk
2013-06-03 17:16 ` Martin von Zweigbergk
2013-06-03 18:05 ` Junio C Hamano
2013-06-03 18:12 ` Martin von Zweigbergk
2013-05-29 6:39 ` [PATCH v2 2/7] add tests for rebasing with patch-equivalence present Martin von Zweigbergk
2013-05-29 7:09 ` Johannes Sixt
2013-05-30 5:30 ` Martin von Zweigbergk
2013-05-30 5:41 ` Felipe Contreras
2013-05-30 6:14 ` Martin von Zweigbergk
2013-05-30 6:40 ` Felipe Contreras
2013-05-30 6:46 ` Martin von Zweigbergk
2013-05-30 12:54 ` Johannes Sixt
2013-05-30 15:01 ` Martin von Zweigbergk
2013-05-29 6:39 ` Martin von Zweigbergk [this message]
2013-05-29 6:39 ` [PATCH v2 4/7] add tests for rebasing root Martin von Zweigbergk
2013-05-29 7:31 ` Johannes Sixt
2013-05-30 5:51 ` Martin von Zweigbergk
2013-05-29 6:39 ` [PATCH v2 5/7] add tests for rebasing merged history Martin von Zweigbergk
2013-05-29 7:57 ` Johannes Sixt
2013-05-31 5:42 ` Martin von Zweigbergk
2013-05-29 10:33 ` Johannes Sixt
2013-05-29 6:39 ` [PATCH v2 6/7] t3406: modernize style Martin von Zweigbergk
2013-05-29 6:39 ` [PATCH v2 7/7] tests: move test for rebase messages from t3400 to t3406 Martin von Zweigbergk
2013-05-29 7:10 ` [PATCH v2 0/7] Rebase topology test Felipe Contreras
2013-05-29 12:50 ` Ramkumar Ramachandra
2013-05-29 13:54 ` Felipe Contreras
2013-05-31 6:49 ` [PATCH v3 " Martin von Zweigbergk
2013-05-31 6:49 ` [PATCH v3 1/7] add simple tests of consistency across rebase types Martin von Zweigbergk
2013-05-31 6:49 ` [PATCH v3 2/7] add tests for rebasing with patch-equivalence present Martin von Zweigbergk
2013-05-31 6:49 ` [PATCH v3 3/7] add tests for rebasing of empty commits Martin von Zweigbergk
2013-05-31 6:49 ` [PATCH v3 4/7] add tests for rebasing root Martin von Zweigbergk
2013-05-31 6:49 ` [PATCH v3 5/7] add tests for rebasing merged history Martin von Zweigbergk
2013-05-31 12:19 ` Johannes Sixt
2013-06-01 21:36 ` [PATCH v4 " Martin von Zweigbergk
2013-05-31 6:49 ` [PATCH v3 6/7] t3406: modernize style Martin von Zweigbergk
2013-05-31 6:49 ` [PATCH v3 7/7] tests: move test for rebase messages from t3400 to t3406 Martin von Zweigbergk
2013-06-03 20:42 ` [PATCH v5 0/7] Rebase topology test Martin von Zweigbergk
2013-06-03 20:42 ` [PATCH v5 1/7] add simple tests of consistency across rebase types Martin von Zweigbergk
2013-06-03 22:28 ` Junio C Hamano
2013-06-04 5:14 ` Martin von Zweigbergk
2013-06-04 5:49 ` Junio C Hamano
2013-06-04 6:15 ` Johannes Sixt
2013-06-05 4:31 ` Martin von Zweigbergk
2013-06-03 20:42 ` [PATCH v5 2/7] add tests for rebasing with patch-equivalence present Martin von Zweigbergk
2013-06-03 20:42 ` [PATCH v5 3/7] add tests for rebasing of empty commits Martin von Zweigbergk
2013-06-03 20:42 ` [PATCH v5 4/7] add tests for rebasing root Martin von Zweigbergk
2013-06-03 20:42 ` [PATCH v5 5/7] add tests for rebasing merged history Martin von Zweigbergk
2013-06-04 17:18 ` Junio C Hamano
2013-06-05 5:44 ` Martin von Zweigbergk
2013-06-05 6:12 ` Johannes Sixt
2013-06-03 20:42 ` [PATCH v5 6/7] t3406: modernize style Martin von Zweigbergk
2013-06-03 20:42 ` [PATCH v5 7/7] tests: move test for rebase messages from t3400 to t3406 Martin von Zweigbergk
2013-06-07 6:11 ` [PATCH v6 0/8] Rebase topology test Martin von Zweigbergk
2013-06-07 6:11 ` [PATCH v6 1/7] add simple tests of consistency across rebase types Martin von Zweigbergk
2013-06-07 6:11 ` [PATCH v6 2/7] add tests for rebasing with patch-equivalence present Martin von Zweigbergk
2013-06-07 6:11 ` [PATCH v6 3/7] add tests for rebasing of empty commits Martin von Zweigbergk
2013-06-07 6:11 ` [PATCH v6 4/7] add tests for rebasing root Martin von Zweigbergk
2013-06-07 6:11 ` [PATCH v6 5/7] add tests for rebasing merged history Martin von Zweigbergk
2013-06-07 6:11 ` [PATCH v6 6/7] t3406: modernize style Martin von Zweigbergk
2013-06-07 6:11 ` [PATCH v6 7/7] tests: move test for rebase messages from t3400 to t3406 Martin von Zweigbergk
2013-06-07 16:43 ` [PATCH v6 0/8] Rebase topology test Junio C Hamano
2013-06-07 19:37 ` Johannes Sixt
2013-06-18 7:28 ` [PATCH mz/rebase-tests] rebase topology tests: fix commit names on case-insensitive file systems Johannes Sixt
2013-06-18 15:45 ` Junio C Hamano
2013-06-18 15:53 ` Martin von Zweigbergk
2013-06-19 5:52 ` Johannes Sixt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1369809572-24431-4-git-send-email-martinvonz@gmail.com \
--to=martinvonz@gmail.com \
--cc=chris@arachsys.com \
--cc=felipe.contreras@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=j.sixt@viscovery.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).