Test all four cases of whipper version schemes

Group different version schemes with the actual one generated from the logger in a list to avoid parsing a whole .log file.
The four possible cases are documented here: https://github.com/pypa/setuptools_scm/#default-versioning-scheme.

Fixes: #427.

Signed-off-by: ABCbum <kimlong221002@gmail.com>
This commit is contained in:
ABCbum
2020-01-25 02:18:06 +07:00
committed by JoeLametta
parent 553a6de88f
commit f59caeae7b

View File

@@ -139,14 +139,19 @@ class LoggerTestCase(unittest.TestCase):
# RegEX updated to support all the 4 cases of the versioning scheme:
# https://github.com/pypa/setuptools_scm/#default-versioning-scheme
self.assertRegex(
actualLines[0],
re.compile((
r'Log created by: whipper '
r'[\d]+\.[\d]+\.[\d]+(\+d\d{8}|\.dev[\w\.\+]+)? '
r'\(internal logger\)'
))
)
versionSchemes = [
actualLines[0], # 'Log created by: whipper 0.7.4.dev87+gb71ec9f.d20191026 (internal logger)' # noqa: E501
'Log created by: whipper 0.7.4.dev87+gb71ec9f (internal logger)',
'Log created by: whipper 0.7.4+d20191026 (internal logger)',
'Log created by: whipper 0.7.4 (internal logger)'
]
created_by_re = re.compile((
r'Log created by: whipper '
r'[\d]+\.[\d]+\.[\d]+(\+d\d{8}|\.dev[\w\.\+]+)? '
r'\(internal logger\)'
))
for versionScheme in versionSchemes:
self.assertRegex(versionScheme, created_by_re)
self.assertRegex(
actualLines[1],
re.compile((