Signed-off-by: Pat Notz <patnotz@xxxxxxxxx> --- t/t7500-commit.sh | 39 +++++++++++++++++++++++++++++++++++++++ 1 files changed, 39 insertions(+), 0 deletions(-) diff --git a/t/t7500-commit.sh b/t/t7500-commit.sh index aa9c577..cd21f67 100755 --- a/t/t7500-commit.sh +++ b/t/t7500-commit.sh @@ -215,4 +215,43 @@ test_expect_success 'Commit a message with --allow-empty-message' ' commit_msg_is "hello there" ' +commit_for_rebase_autosquash_setup() { + echo "first content for testing commit messages for rebase --autosquash" >>foo && + git add foo && + cat >log <<EOF +target message subject line + +target message body line 1 +target message body line 2 +EOF + git commit -F log && + echo "second content for testing commit messages for rebase --autosquash" >>foo && + git add foo && + git commit -m "intermediate commit" && + echo "third content for testing commit messages for rebase --autosquash" >>foo && + git add foo +} + +test_expect_success 'commit --fixup provides correct one-line commit message' ' + commit_for_rebase_autosquash_setup && + git commit --fixup HEAD~1 && + commit_msg_is "fixup! target message subject line" +' +test_expect_success 'commit --squash provides correct one-line commit message' ' + commit_for_rebase_autosquash_setup && + git commit --squash HEAD~1 && + commit_msg_is "squash! target message subject line" +' + +test_expect_success 'multiple commit message options must fail' ' + echo changes >>foo && + echo "message" >log && + git add foo && + test_must_fail git commit --fixup HEAD~1 --squash HEAD~1 && + test_must_fail git commit --fixup HEAD~1 -m "cmdline message" && + test_must_fail git commit --fixup HEAD~1 -F log && + test_must_fail git commit --squash HEAD~1 -C HEAD~2 && + test_must_fail git commit --squash HEAD~1 -c HEAD~2 +' + test_done -- 1.7.2.3 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html