[PATCH] t3407-rebase-abort.sh: Enhance existing tests, and add test for rebase --merge

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Removing .dotest should actually not be needed, so just test the directory
don't exist after --abort, but exists after starting the rebase.

Also, execute the same tests with rebase --merge, which uses a different code
path.

Signed-off-by: Mike Hommey <mh@xxxxxxxxxxxx>
---
 t/t3407-rebase-abort.sh |   68 +++++++++++++++++++++++++++-------------------
 1 files changed, 40 insertions(+), 28 deletions(-)

diff --git a/t/t3407-rebase-abort.sh b/t/t3407-rebase-abort.sh
index 3417138..37944c3 100755
--- a/t/t3407-rebase-abort.sh
+++ b/t/t3407-rebase-abort.sh
@@ -23,37 +23,49 @@ test_expect_success setup '
 	git branch pre-rebase
 '
 
-test_expect_success 'rebase --abort' '
-	test_must_fail git rebase master &&
-	git rebase --abort &&
-	test $(git rev-parse to-rebase) = $(git rev-parse pre-rebase)
-'
+testrebase() {
+	type=$1
+	dotest=$2
 
-test_expect_success 'rebase --abort after --skip' '
-	# Clean up the state from the previous one
-	git reset --hard pre-rebase
-	rm -rf .dotest
+	test_expect_success "rebase$type --abort" '
+		# Clean up the state from the previous one
+		git reset --hard pre-rebase
+		test_must_fail git rebase'"$type"' master &&
+		test -d '$dotest' &&
+		git rebase --abort &&
+		test $(git rev-parse to-rebase) = $(git rev-parse pre-rebase) &&
+		test ! -d '$dotest'
+	'
 
-	test_must_fail git rebase master &&
-	test_must_fail git rebase --skip &&
-	test $(git rev-parse HEAD) = $(git rev-parse master) &&
-	git rebase --abort &&
-	test $(git rev-parse to-rebase) = $(git rev-parse pre-rebase)
-'
+	test_expect_success "rebase$type --abort after --skip" '
+		# Clean up the state from the previous one
+		git reset --hard pre-rebase
+		test_must_fail git rebase'"$type"' master &&
+		test -d '$dotest' &&
+		test_must_fail git rebase --skip &&
+		test $(git rev-parse HEAD) = $(git rev-parse master) &&
+		git-rebase --abort &&
+		test $(git rev-parse to-rebase) = $(git rev-parse pre-rebase) &&
+		test ! -d '$dotest'
+	'
 
-test_expect_success 'rebase --abort after --continue' '
-	# Clean up the state from the previous one
-	git reset --hard pre-rebase
-	rm -rf .dotest
+	test_expect_success "rebase$type --abort after --continue" '
+		# Clean up the state from the previous one
+		git reset --hard pre-rebase
+		test_must_fail git rebase'"$type"' master &&
+		test -d '$dotest' &&
+		echo c > a &&
+		echo d >> a &&
+		git add a &&
+		test_must_fail git rebase --continue &&
+		test $(git rev-parse HEAD) != $(git rev-parse master) &&
+		git rebase --abort &&
+		test $(git rev-parse to-rebase) = $(git rev-parse pre-rebase) &&
+		test ! -d '$dotest'
+	'
+}
 
-	test_must_fail git rebase master &&
-	echo c > a &&
-	echo d >> a &&
-	git add a &&
-	test_must_fail git rebase --continue &&
-	test $(git rev-parse HEAD) != $(git rev-parse master) &&
-	git rebase --abort &&
-	test $(git rev-parse to-rebase) = $(git rev-parse pre-rebase)
-'
+testrebase "" .dotest
+testrebase " --merge" .git/.dotest-merge
 
 test_done
-- 
1.5.4.3.344.g6fd65.dirty

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux