t/rebase: add failing tests for a peculiar revision
The following commands fail, even if :/quuxery and :/foomery resolve to perfectly valid commits: $ git rebase [-i] --onto :/quuxery :/foomery This is because rebase [-i] attempts to rev-parse ${REV}^0 to verify that the given revision resolves to a commit. Add tests to document these failures. Signed-off-by: Ramkumar Ramachandra <artagnon@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
bdff0e3a37
commit
6567dc05a3
@ -88,6 +88,17 @@ test_expect_success 'rebase fast-forward to master' '
|
||||
test_i18ngrep "Fast-forwarded HEAD to my-topic-branch" out
|
||||
'
|
||||
|
||||
test_expect_failure 'rebase, with <onto> and <upstream> specified as :/quuxery' '
|
||||
test_when_finished "git branch -D torebase" &&
|
||||
git checkout -b torebase my-topic-branch^ &&
|
||||
upstream=$(git rev-parse ":/Add B") &&
|
||||
onto=$(git rev-parse ":/Add A") &&
|
||||
git rebase --onto $onto $upstream &&
|
||||
git reset --hard my-topic-branch^ &&
|
||||
git rebase --onto ":/Add A" ":/Add B" &&
|
||||
git checkout my-topic-branch
|
||||
'
|
||||
|
||||
test_expect_success 'the rebase operation should not have destroyed author information' '
|
||||
! (git log | grep "Author:" | grep "<>")
|
||||
'
|
||||
|
@ -947,4 +947,15 @@ test_expect_success 'rebase -i respects core.commentchar' '
|
||||
test B = $(git cat-file commit HEAD^ | sed -ne \$p)
|
||||
'
|
||||
|
||||
test_expect_failure 'rebase -i, with <onto> and <upstream> specified as :/quuxery' '
|
||||
test_when_finished "git branch -D torebase" &&
|
||||
git checkout -b torebase branch1 &&
|
||||
upstream=$(git rev-parse ":/J") &&
|
||||
onto=$(git rev-parse ":/A") &&
|
||||
git rebase --onto $onto $upstream &&
|
||||
git reset --hard branch1 &&
|
||||
git rebase --onto ":/A" ":/J" &&
|
||||
git checkout branch1
|
||||
'
|
||||
|
||||
test_done
|
||||
|
Loading…
Reference in New Issue
Block a user