WIP: more testing

This commit is contained in:
Manuel Barkhau 2018-09-04 09:56:53 +02:00
parent 5108837f45
commit 0a3638a62f
6 changed files with 94 additions and 7 deletions

View file

@ -32,8 +32,8 @@ class Config(typ.NamedTuple):
MaybeConfig = typ.Optional[Config]
def _parse_buffer(cfg_buffer: io.StringIO) -> MaybeConfig:
cfg_parser = configparser.RawConfigParser("")
def parse_buffer(cfg_buffer: io.StringIO) -> MaybeConfig:
cfg_parser = configparser.RawConfigParser()
cfg_parser.readfp(cfg_buffer)
if "pycalver" not in cfg_parser:
@ -99,7 +99,7 @@ def parse(config_file="setup.cfg") -> MaybeConfig:
cfg_buffer.write(fh.read())
cfg_buffer.seek(0)
return _parse_buffer(cfg_buffer)
return parse_buffer(cfg_buffer)
def default_config_lines() -> typ.List[str]:

View file

@ -17,7 +17,7 @@ VALID_RELESE_VALUES = ("alpha", "beta", "dev", "rc", "post")
# https://regex101.com/r/fnj60p/10
PYCALVER_RE: typ.re.Pattern[str] = re.compile(r"""
PYCALVER_RE: typ.Pattern[str] = re.compile(r"""
\b
(?P<version>
(?P<calver>
@ -75,6 +75,8 @@ class VersionInfo(typ.NamedTuple):
def parse_version_info(version: str) -> VersionInfo:
match = PYCALVER_RE.match(version)
if match is None:
raise ValueError(f"Invalid pycalver: {version}")
pep440_version = str(pkg_resources.parse_version(version))
return VersionInfo(pep440_version=pep440_version, **match.groupdict())

View file

@ -17,7 +17,7 @@ log = logging.getLogger("pycalver.rewrite")
def rewrite(
new_version: str,
file_patterns: typ.Dict[str, str],
file_patterns: typ.Dict[str, typ.List[str]],
dry=False,
verbose=False,
) -> None:

View file

@ -5,6 +5,7 @@
# SPDX-License-Identifier: MIT
import logging
import typing as typ
import datetime as dt
from . import lex_id
@ -34,6 +35,8 @@ def bump(old_version: str, *, release: str=None) -> str:
new_calver = old_ver.calver
new_build = lex_id.next_id(old_ver.build[1:])
new_release: typ.Optional[str] = None
if release is None:
if old_ver.release:
# preserve existing release