示例#1
0
    def test_config_semver(self):
        config_file = fixture_path("config/.bumpit-semver.yaml")
        config = Configuration.parse(file=config_file)

        assert config.config_file == config_file
        assert config.current_version == "0.0.1"
        assert config.strategy.name == "semver"
        assert config.strategy.part == "minor"
        assert config.tag.apply
        assert config.tag.format == "{version}"
        assert config.auto_remote_push is False
        assert config.tracked_files == ["setup.py", "sample/VERSION"]
示例#2
0
    def test_config_calver(self):
        config_file = fixture_path("config/.bumpit-calver.yaml")
        config = Configuration.parse(file=config_file)

        assert config.config_file == config_file
        assert config.current_version == "201910.1.0"
        assert config.strategy.name == "calver"
        assert config.strategy.part == "auto"
        assert config.strategy.version_format == "YYYYMM.MINOR.MICRO"
        assert config.tag.apply
        assert config.tag.format == "{version}"
        assert config.auto_remote_push is False
        assert config.tracked_files == ["setup.py", "sample/VERSION"]
示例#3
0
    def test_config_custom_base_branch(self):
        config_file = fixture_path("config/.bumpit-custom-base.yaml")
        config = Configuration.parse(file=config_file)

        assert config.base_branch == "main"
        assert config.config_file == config_file
        assert config.current_version == "0.0.1"
        assert config.strategy.name == "semver"
        assert config.strategy.part == "minor"
        assert config.tag.apply
        assert config.tag.format == "{version}"
        assert config.auto_remote_push is False
        assert config.tracked_files == ["setup.py"]
示例#4
0
def run(config, logger, run_settings):
    configuration = Configuration.parse(config)

    executor = BumpIt(configuration, run_settings.dry_run, logger)

    part = run_settings.target_part or configuration.strategy.part

    bumped_version = next_version(
        strategy_settings=StrategySettings(
            target_strategy=configuration.strategy.name,
            version_format=configuration.strategy.version_format,
            current_version=configuration.current_version,
        ),
        part=part,
        force_value=run_settings.force_value,
    )

    executor.execute(bumped_version)
示例#5
0
 def test_config_missing_file(self):
     with pytest.raises(ValueError):
         Configuration.parse(file="/tmp/not-a-file-kaboom")
示例#6
0
 def test_config_invalid_tag(self):
     with pytest.raises(ValueError):
         Configuration.parse(
             file=fixture_path("config/.bumpit-invalid-tag.yaml"))
示例#7
0
 def test_config_missing_fields(self):
     with pytest.raises(ValueError):
         Configuration.parse(
             file=fixture_path("config/.bumpit-missing-fields.yaml"))