3 test_description
='rebase topology tests with merges'
5 .
"$TEST_DIRECTORY"/lib-rebase.sh
7 test_revision_subjects
() {
10 set -- $
(git log
--format=%s
--no-walk=unsorted
"$@")
11 test "$expected" = "$*"
21 test_expect_success
'setup of non-linear-history' '
50 test_expect_
$result "rebase $* after merge from upstream" "
53 test_cmp_rev e HEAD~2 &&
54 test_linear_range 'n o' e..
57 test_run_rebase success
--apply
58 test_run_rebase success
-m
59 test_run_rebase success
-i
66 test_expect_
$result "rebase $* of non-linear history is linearized in place" "
69 test_cmp_rev d HEAD~3 &&
70 test_linear_range "\'"$expected"\'" d..
73 test_run_rebase success
'n o e' --apply
74 test_run_rebase success
'n o e' -m
75 test_run_rebase success
'n o e' -i
82 test_expect_
$result "rebase $* of non-linear history is linearized upstream" "
85 test_cmp_rev c HEAD~4 &&
86 test_linear_range "\'"$expected"\'" c..
89 test_run_rebase success
'd n o e' --apply
90 test_run_rebase success
'd n o e' -m
91 test_run_rebase success
'd n o e' -i
98 test_expect_
$result "rebase $* of non-linear history with merges after upstream merge is linearized" "
101 test_cmp_rev c HEAD~4 &&
102 test_linear_range "\'"$expected"\'" c..
105 test_run_rebase success
'd n o e' --apply
106 test_run_rebase success
'd n o e' -m
107 test_run_rebase success
'd n o e' -i