зеркало из https://github.com/microsoft/git.git
Merge branch 'js/rebase-i-tests'
A few tests that specifically target "git rebase -i" have been added. * js/rebase-i-tests: rebase -i: we allow extra spaces after fixup!/squash! rebase -i: demonstrate a bug with --autosquash t3404: add a test for the --gpg-sign option
This commit is contained in:
Коммит
c97268c822
|
@ -1281,4 +1281,12 @@ test_expect_success 'editor saves as CR/LF' '
|
|||
)
|
||||
'
|
||||
|
||||
SQ="'"
|
||||
test_expect_success 'rebase -i --gpg-sign=<key-id>' '
|
||||
set_fake_editor &&
|
||||
FAKE_LINES="edit 1" git rebase -i --gpg-sign="\"S I Gner\"" HEAD^ \
|
||||
>out 2>err &&
|
||||
grep "$SQ-S\"S I Gner\"$SQ" err
|
||||
'
|
||||
|
||||
test_done
|
||||
|
|
|
@ -271,4 +271,37 @@ test_expect_success 'autosquash with custom inst format' '
|
|||
test 2 = $(git cat-file commit HEAD^ | grep squash | wc -l)
|
||||
'
|
||||
|
||||
set_backup_editor () {
|
||||
write_script backup-editor.sh <<-\EOF
|
||||
cp "$1" .git/backup-"$(basename "$1")"
|
||||
EOF
|
||||
test_set_editor "$PWD/backup-editor.sh"
|
||||
}
|
||||
|
||||
test_expect_failure 'autosquash with multiple empty patches' '
|
||||
test_tick &&
|
||||
git commit --allow-empty -m "empty" &&
|
||||
test_tick &&
|
||||
git commit --allow-empty -m "empty2" &&
|
||||
test_tick &&
|
||||
>fixup &&
|
||||
git add fixup &&
|
||||
git commit --fixup HEAD^^ &&
|
||||
(
|
||||
set_backup_editor &&
|
||||
GIT_USE_REBASE_HELPER=false \
|
||||
git rebase -i --force-rebase --autosquash HEAD~4 &&
|
||||
grep empty2 .git/backup-git-rebase-todo
|
||||
)
|
||||
'
|
||||
|
||||
test_expect_success 'extra spaces after fixup!' '
|
||||
base=$(git rev-parse HEAD) &&
|
||||
test_commit to-fixup &&
|
||||
git commit --allow-empty -m "fixup! to-fixup" &&
|
||||
git rebase -i --autosquash --keep-empty HEAD~2 &&
|
||||
parent=$(git rev-parse HEAD^) &&
|
||||
test $base = $parent
|
||||
'
|
||||
|
||||
test_done
|
||||
|
|
Загрузка…
Ссылка в новой задаче