import os from pathlib import Path import pytest from pytest_mock import MockerFixture, MockType from commitizen import defaults from commitizen.config import BaseConfig from commitizen.config.json_config import JsonConfig @pytest.fixture def config() -> BaseConfig: _config = BaseConfig() _config.settings.update({"name": defaults.DEFAULT_SETTINGS["name"]}) return _config @pytest.fixture def config_customize() -> JsonConfig: json_string = r"""{ "commitizen": { "name": "cz_customize", "version": "3.0.0", "changelog_incremental": "true", "customize": { "message_template": "{{prefix}}({{scope}}): {{subject}}\n\n{{body}}{% if is_breaking_change %}\nBREAKING CHANGE: {{footer}}{% endif %}", "schema": "(): \n\n\n\n(BREAKING CHANGE: