@matheusbsbs / matheus-bagliano / commits / 4947cf9cc3
Fork 0

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

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@glandium.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Mike Hommey committed Mar 1, 2008 at 12:12 UTC 4947cf9cc377b15006f3e649c59edf9bc813af6f
1 file changed +40 -28
t/t3407-rebase-abort.sh
+40 -28
@@ -23,37 +23,49 @@ test_expect_success setup '
23 git branch pre-rebase
24 '
25
26 -test_expect_success 'rebase --abort' '
27 - test_must_fail git rebase master &&
28 - git rebase --abort &&
29 - test $(git rev-parse to-rebase) = $(git rev-parse pre-rebase)
30 -'
26 +testrebase() {
27 + type=$1
28 + dotest=$2
29
32 -test_expect_success 'rebase --abort after --skip' '
33 - # Clean up the state from the previous one
34 - git reset --hard pre-rebase
35 - rm -rf .dotest
30 + test_expect_success "rebase$type --abort" '
31 + # Clean up the state from the previous one
32 + git reset --hard pre-rebase
33 + test_must_fail git rebase'"$type"' master &&
34 + test -d '$dotest' &&
35 + git rebase --abort &&
36 + test $(git rev-parse to-rebase) = $(git rev-parse pre-rebase) &&
37 + test ! -d '$dotest'
38 + '
39
37 - test_must_fail git rebase master &&
38 - test_must_fail git rebase --skip &&
39 - test $(git rev-parse HEAD) = $(git rev-parse master) &&
40 - git rebase --abort &&
41 - test $(git rev-parse to-rebase) = $(git rev-parse pre-rebase)
42 -'
40 + test_expect_success "rebase$type --abort after --skip" '
41 + # Clean up the state from the previous one
42 + git reset --hard pre-rebase
43 + test_must_fail git rebase'"$type"' master &&
44 + test -d '$dotest' &&
45 + test_must_fail git rebase --skip &&
46 + test $(git rev-parse HEAD) = $(git rev-parse master) &&
47 + git-rebase --abort &&
48 + test $(git rev-parse to-rebase) = $(git rev-parse pre-rebase) &&
49 + test ! -d '$dotest'
50 + '
51
44 -test_expect_success 'rebase --abort after --continue' '
45 - # Clean up the state from the previous one
46 - git reset --hard pre-rebase
47 - rm -rf .dotest
52 + test_expect_success "rebase$type --abort after --continue" '
53 + # Clean up the state from the previous one
54 + git reset --hard pre-rebase
55 + test_must_fail git rebase'"$type"' master &&
56 + test -d '$dotest' &&
57 + echo c > a &&
58 + echo d >> a &&
59 + git add a &&
60 + test_must_fail git rebase --continue &&
61 + test $(git rev-parse HEAD) != $(git rev-parse master) &&
62 + git rebase --abort &&
63 + test $(git rev-parse to-rebase) = $(git rev-parse pre-rebase) &&
64 + test ! -d '$dotest'
65 + '
66 +}
67
49 - test_must_fail git rebase master &&
50 - echo c > a &&
51 - echo d >> a &&
52 - git add a &&
53 - test_must_fail git rebase --continue &&
54 - test $(git rev-parse HEAD) != $(git rev-parse master) &&
55 - git rebase --abort &&
56 - test $(git rev-parse to-rebase) = $(git rev-parse pre-rebase)
57 -'
68 +testrebase "" .dotest
69 +testrebase " --merge" .git/.dotest-merge
70
71 test_done