Browse Source

t/t3400-rebase.sh: add more tests to help migrating git-rebase.sh to C

These new tests make sure I don't miss any check being performed before
rebase is proceeded (which is well tested by other tests)

Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Nguyễn Thái Ngọc Duy 16 years ago committed by Junio C Hamano
parent
commit
7a7eb5173d
  1. 31
      t/t3400-rebase.sh

31
t/t3400-rebase.sh

@ -41,9 +41,40 @@ test_expect_success \ @@ -41,9 +41,40 @@ test_expect_success \
git tag topic
'

test_expect_success 'rebase on dirty worktree' '
echo dirty >> A &&
test_must_fail git rebase master'

test_expect_success 'rebase on dirty cache' '
git add A &&
test_must_fail git rebase master'

test_expect_success 'rebase against master' '
git reset --hard HEAD &&
git rebase master'

test_expect_success 'rebase against master twice' '
git rebase master 2>err &&
grep "Current branch my-topic-branch is up to date" err
'

test_expect_success 'rebase against master twice with --force' '
git rebase --force-rebase master >out &&
grep "Current branch my-topic-branch is up to date, rebase forced" out
'

test_expect_success 'rebase against master twice from another branch' '
git checkout my-topic-branch^ &&
git rebase master my-topic-branch 2>err &&
grep "Current branch my-topic-branch is up to date" err
'

test_expect_success 'rebase fast-forward to master' '
git checkout my-topic-branch^ &&
git rebase my-topic-branch 2>err &&
grep "Fast-forwarded HEAD to my-topic-branch" err
'

test_expect_success \
'the rebase operation should not have destroyed author information' \
'! (git log | grep "Author:" | grep "<>")'

Loading…
Cancel
Save