newfol/test/testversion.py
brian m. carlson 14785e7437
testversion: refactor to eliminate duplicate code.
Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
2014-07-13 15:30:48 +00:00

38 lines
1.2 KiB
Python
Executable file

#!/usr/bin/python3
import newfol.version
import unittest
class TestComputeVersion(unittest.TestCase):
def check_version(self, result, *args):
self.assertEqual(newfol.version.compute_version(*args), result)
def test_default(self):
self.check_version("v12", "v12")
self.check_version("lalala", "lalala")
def test_nonmatch(self):
self.check_version("v4", "v4", "v16.2")
self.check_version("v4", "v4", "v16-2.5")
self.check_version("v4", "v4", "v16-2")
self.check_version("v4", "v4", "v16-2-gx")
def test_short(self):
self.check_version("v5", "v4", "v5")
self.check_version("v22", "v4", "v22")
def test_long(self):
self.check_version("v6~pre0-1-gabcdef", "v4", "v5-1-gabcdef")
self.check_version("v17~pre0-22-g078bad", "v4", "v16-22-g078bad"),
def test_long_default(self):
self.check_version("v6~pre2-1-gabcdef", "v6~pre2", "v5-1-gabcdef")
self.check_version("v17~pre5-22-g078bad", "v17~pre5", "v16-22-g078bad")
def test_long_pre(self):
self.check_version("v6~pre0-1-gabcdef", "v6~pre", "v5-1-gabcdef")
self.check_version("v17~pre0-22-g078bad", "v17~pre", "v16-22-g078bad")
if __name__ == '__main__':
unittest.main()