dda-devops-build/test/test_version_class.py

61 lines
No EOL
1.6 KiB
Python

from devops_test import Version, ReleaseLevel
from pathlib import Path
def test_version():
version = Version([1, 2, 3], False)
version.increment(ReleaseLevel.SNAPSHOT)
assert version.get() == "1.2.3-SNAPSHOT"
assert version.version == [1, 2, 3]
assert version.is_snapshot
version.increment(ReleaseLevel.PATCH)
assert version.get() == "1.2.4"
assert version.version == [1, 2, 4]
assert not version.is_snapshot
version.increment(ReleaseLevel.SNAPSHOT)
assert version.get() == "1.2.4-SNAPSHOT"
version.increment(ReleaseLevel.SNAPSHOT)
assert version.get() == "1.2.4-SNAPSHOT"
version.increment(ReleaseLevel.MINOR)
assert version.get() == "1.3.0"
version.increment(ReleaseLevel.MAJOR)
assert version.get() == "2.0.0"
def test_gradle(tmp_path):
# init
file_name = 'config.gradle'
with open(f'test/{file_name}', 'r') as gradle_file:
contents = gradle_file.read()
f = tmp_path / file_name
f.write_text(contents)
# test
version = Version.from_file(f)
version.increment(ReleaseLevel.SNAPSHOT)
version.to_file()
# check
assert 'version = "12.4.678-SNAPSHOT"' in f.read_text()
def test_json(tmp_path):
# init
file_name = 'config.json'
with open(f'test/{file_name}', 'r') as gradle_file:
contents = gradle_file.read()
f = tmp_path / file_name
f.write_text(contents)
# test
version = Version.from_file(f)
version.increment(ReleaseLevel.SNAPSHOT)
version.to_file()
# check
assert '"version": "123.123.456-SNAPSHOT"' in f.read_text()