def test_commit_retry_works(config, mocker): prompt_mock = mocker.patch("questionary.prompt") prompt_mock.return_value = { "prefix": "feat", "subject": "user created", "scope": "", "is_breaking_change": False, "body": "closes #21", "footer": "", } commit_mock = mocker.patch("commitizen.git.commit") commit_mock.return_value = cmd.Command("", "error", "", "", 9) error_mock = mocker.patch("commitizen.out.error") with pytest.raises(CommitError): commit_cmd = commands.Commit(config, {}) temp_file = commit_cmd.temp_file commit_cmd() prompt_mock.assert_called_once() error_mock.assert_called_once() assert os.path.isfile(temp_file) # Previous commit failed, so retry should pick up the backup commit # commit_mock = mocker.patch("commitizen.git.commit") commit_mock.return_value = cmd.Command("success", "", "", "", 0) success_mock = mocker.patch("commitizen.out.success") commands.Commit(config, {"retry": True})() commit_mock.assert_called_with("feat: user created\n\ncloses #21") prompt_mock.assert_called_once() success_mock.assert_called_once() assert not os.path.isfile(temp_file)
def test_commit_retry_fails_no_backup(config, mocker): commit_mock = mocker.patch("commitizen.git.commit") commit_mock.return_value = cmd.Command("success", "", "", "", 0) with pytest.raises(NoCommitBackupError) as excinfo: commands.Commit(config, {"retry": True})() assert NoCommitBackupError.message in str(excinfo.value)
def test_commit(config, mocker): prompt_mock = mocker.patch("questionary.prompt") prompt_mock.return_value = { "prefix": "feat", "subject": "user created", "scope": "", "is_breaking_change": False, "body": "", "footer": "", } commit_mock = mocker.patch("commitizen.git.commit") commit_mock.return_value = cmd.Command("success", "", "", "", 0) success_mock = mocker.patch("commitizen.out.success") commands.Commit(config, {})() success_mock.assert_called_once()
def test_commit_retry_fails_no_backup(mocker): commit_mock = mocker.patch("commitizen.git.commit") commit_mock.return_value = cmd.Command("success", "", "", "") with pytest.raises(SystemExit): commands.Commit(config, {"retry": True})()