about summary refs log tree commit diff
path: root/third_party/git/t/t3421-rebase-topology-linear.sh
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/git/t/t3421-rebase-topology-linear.sh')
-rwxr-xr-xthird_party/git/t/t3421-rebase-topology-linear.sh351
1 files changed, 0 insertions, 351 deletions
diff --git a/third_party/git/t/t3421-rebase-topology-linear.sh b/third_party/git/t/t3421-rebase-topology-linear.sh
deleted file mode 100755
index 7274dca40b..0000000000
--- a/third_party/git/t/t3421-rebase-topology-linear.sh
+++ /dev/null
@@ -1,351 +0,0 @@
-#!/bin/sh
-
-test_description='basic rebase topology tests'
-. ./test-lib.sh
-. "$TEST_DIRECTORY"/lib-rebase.sh
-
-# a---b---c
-#      \
-#       d---e
-test_expect_success 'setup' '
-	test_commit a &&
-	test_commit b &&
-	test_commit c &&
-	git checkout b &&
-	test_commit d &&
-	test_commit e
-'
-
-test_run_rebase () {
-	result=$1
-	shift
-	test_expect_$result "simple rebase $*" "
-		reset_rebase &&
-		git rebase $* c e &&
-		test_cmp_rev c HEAD~2 &&
-		test_linear_range 'd e' c..
-	"
-}
-test_run_rebase success ''
-test_run_rebase success -m
-test_run_rebase success -i
-test_have_prereq !REBASE_P || test_run_rebase success -p
-
-test_run_rebase () {
-	result=$1
-	shift
-	test_expect_$result "rebase $* is no-op if upstream is an ancestor" "
-		reset_rebase &&
-		git rebase $* b e &&
-		test_cmp_rev e HEAD
-	"
-}
-test_run_rebase success ''
-test_run_rebase success -m
-test_run_rebase success -i
-test_have_prereq !REBASE_P || test_run_rebase success -p
-
-test_run_rebase () {
-	result=$1
-	shift
-	test_expect_$result "rebase $* -f rewrites even if upstream is an ancestor" "
-		reset_rebase &&
-		git rebase $* -f b e &&
-		! test_cmp_rev e HEAD &&
-		test_cmp_rev b HEAD~2 &&
-		test_linear_range 'd e' b..
-	"
-}
-test_run_rebase success ''
-test_run_rebase success -m
-test_run_rebase success -i
-test_have_prereq !REBASE_P || test_run_rebase failure -p
-
-test_run_rebase () {
-	result=$1
-	shift
-	test_expect_$result "rebase $* fast-forwards from ancestor of upstream" "
-		reset_rebase &&
-		git rebase $* e b &&
-		test_cmp_rev e HEAD
-	"
-}
-test_run_rebase success ''
-test_run_rebase success -m
-test_run_rebase success -i
-test_have_prereq !REBASE_P || test_run_rebase success -p
-
-#       f
-#      /
-# a---b---c---g---h
-#      \
-#       d---gp--i
-#
-# gp = cherry-picked g
-# h = reverted g
-#
-# Reverted patches are there for tests to be able to check if a commit
-# that introduced the same change as another commit is
-# dropped. Without reverted commits, we could get false positives
-# because applying the patch succeeds, but simply results in no
-# changes.
-test_expect_success 'setup of linear history for range selection tests' '
-	git checkout c &&
-	test_commit g &&
-	revert h g &&
-	git checkout d &&
-	cherry_pick gp g &&
-	test_commit i &&
-	git checkout b &&
-	test_commit f
-'
-
-test_run_rebase () {
-	result=$1
-	shift
-	test_expect_$result "rebase $* drops patches in upstream" "
-		reset_rebase &&
-		git rebase $* h i &&
-		test_cmp_rev h HEAD~2 &&
-		test_linear_range 'd i' h..
-	"
-}
-test_run_rebase success ''
-test_run_rebase success -m
-test_run_rebase success -i
-test_have_prereq !REBASE_P || test_run_rebase success -p
-
-test_run_rebase () {
-	result=$1
-	shift
-	test_expect_$result "rebase $* can drop last patch if in upstream" "
-		reset_rebase &&
-		git rebase $* h gp &&
-		test_cmp_rev h HEAD^ &&
-		test_linear_range 'd' h..
-	"
-}
-test_run_rebase success ''
-test_run_rebase success -m
-test_run_rebase success -i
-test_have_prereq !REBASE_P || test_run_rebase success -p
-
-test_run_rebase () {
-	result=$1
-	shift
-	test_expect_$result "rebase $* --onto drops patches in upstream" "
-		reset_rebase &&
-		git rebase $* --onto f h i &&
-		test_cmp_rev f HEAD~2 &&
-		test_linear_range 'd i' f..
-	"
-}
-test_run_rebase success ''
-test_run_rebase success -m
-test_run_rebase success -i
-test_have_prereq !REBASE_P || test_run_rebase success -p
-
-test_run_rebase () {
-	result=$1
-	shift
-	test_expect_$result "rebase $* --onto does not drop patches in onto" "
-		reset_rebase &&
-		git rebase $* --onto h f i &&
-		test_cmp_rev h HEAD~3 &&
-		test_linear_range 'd gp i' h..
-	"
-}
-test_run_rebase success ''
-test_run_rebase success -m
-test_run_rebase success -i
-test_have_prereq !REBASE_P || 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_have_prereq !REBASE_P || 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 success -m
-test_run_rebase success -i
-test_have_prereq !REBASE_P || 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 success -m
-test_run_rebase success -i
-test_have_prereq !REBASE_P || test_run_rebase failure -p
-test_run_rebase success --rebase-merges
-
-#       m
-#      /
-# a---b---c---g
-#
-# x---y---bp
-#
-# bp = cherry-picked b
-# m = reverted b
-#
-# Reverted patches are there for tests to be able to check if a commit
-# that introduced the same change as another commit is
-# dropped. Without reverted commits, we could get false positives
-# because applying the patch succeeds, but simply results in no
-# changes.
-test_expect_success 'setup of linear history for test involving root' '
-	git checkout b &&
-	revert m b &&
-	git checkout --orphan disjoint &&
-	git rm -rf . &&
-	test_commit x &&
-	test_commit y &&
-	cherry_pick bp b
-'
-
-test_run_rebase () {
-	result=$1
-	shift
-	test_expect_$result "rebase $* --onto --root" "
-		reset_rebase &&
-		git rebase $* --onto c --root y &&
-		test_cmp_rev c HEAD~2 &&
-		test_linear_range 'x y' c..
-	"
-}
-test_run_rebase success ''
-test_run_rebase success -m
-test_run_rebase success -i
-test_have_prereq !REBASE_P || test_run_rebase success -p
-
-test_run_rebase () {
-	result=$1
-	shift
-	test_expect_$result "rebase $* without --onto --root with disjoint history" "
-		reset_rebase &&
-		git rebase $* c y &&
-		test_cmp_rev c HEAD~2 &&
-		test_linear_range 'x y' c..
-	"
-}
-test_run_rebase success ''
-test_run_rebase success -m
-test_run_rebase success -i
-test_have_prereq !REBASE_P || test_run_rebase failure -p
-
-test_run_rebase () {
-	result=$1
-	shift
-	test_expect_$result "rebase $* --onto --root drops patch in onto" "
-		reset_rebase &&
-		git rebase $* --onto m --root bp &&
-		test_cmp_rev m HEAD~2 &&
-		test_linear_range 'x y' m..
-	"
-}
-test_run_rebase success ''
-test_run_rebase success -m
-test_run_rebase success -i
-test_have_prereq !REBASE_P || test_run_rebase success -p
-
-test_run_rebase () {
-	result=$1
-	shift
-	test_expect_$result "rebase $* --onto --root with merge-base does not go to root" "
-		reset_rebase &&
-		git rebase $* --onto m --root g &&
-		test_cmp_rev m HEAD~2 &&
-		test_linear_range 'c g' m..
-	"
-}
-
-test_run_rebase success ''
-test_run_rebase success -m
-test_run_rebase success -i
-test_have_prereq !REBASE_P || test_run_rebase failure -p
-
-test_run_rebase () {
-	result=$1
-	shift
-	test_expect_$result "rebase $* without --onto --root with disjoint history drops patch in onto" "
-		reset_rebase &&
-		git rebase $* m bp &&
-		test_cmp_rev m HEAD~2 &&
-		test_linear_range 'x y' m..
-	"
-}
-test_run_rebase success ''
-test_run_rebase success -m
-test_run_rebase success -i
-test_have_prereq !REBASE_P || test_run_rebase failure -p
-
-test_run_rebase () {
-	result=$1
-	shift
-	test_expect_$result "rebase $* --root on linear history is a no-op" "
-		reset_rebase &&
-		git rebase $* --root c &&
-		test_cmp_rev c HEAD
-	"
-}
-test_run_rebase success ''
-test_run_rebase success -m
-test_run_rebase success -i
-test_have_prereq !REBASE_P || test_run_rebase failure -p
-
-test_run_rebase () {
-	result=$1
-	shift
-	test_expect_$result "rebase $* -f --root on linear history causes re-write" "
-		reset_rebase &&
-		git rebase $* -f --root c &&
-		! test_cmp_rev a HEAD~2 &&
-		test_linear_range 'a b c' HEAD
-	"
-}
-test_run_rebase success ''
-test_run_rebase success -m
-test_run_rebase success -i
-test_have_prereq !REBASE_P || test_run_rebase success -p
-
-test_done