Also included are unit tests to verify the behavior of the new version computation functions. Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
35 lines
1.6 KiB
Python
Executable file
35 lines
1.6 KiB
Python
Executable file
#!/usr/bin/python3
|
|
|
|
import newfol.version
|
|
import unittest
|
|
|
|
class TestComputeVersion(unittest.TestCase):
|
|
def test_default(self):
|
|
self.assertEqual(newfol.version.compute_version("v12"), "v12")
|
|
self.assertEqual(newfol.version.compute_version("lalala"), "lalala")
|
|
def test_nonmatch(self):
|
|
self.assertEqual(newfol.version.compute_version("v4", "v16.2"), "v4")
|
|
self.assertEqual(newfol.version.compute_version("v4", "v16-2.5"), "v4")
|
|
self.assertEqual(newfol.version.compute_version("v4", "v16-2"), "v4")
|
|
self.assertEqual(newfol.version.compute_version("v4", "v16-2-gx"), "v4")
|
|
def test_short(self):
|
|
self.assertEqual(newfol.version.compute_version("v4", "v5"), "v5")
|
|
self.assertEqual(newfol.version.compute_version("v4", "v22"), "v22")
|
|
def test_long(self):
|
|
self.assertEqual(newfol.version.compute_version("v4", "v5-1-gabcdef"),
|
|
"v6~pre0-1-gabcdef")
|
|
self.assertEqual(newfol.version.compute_version("v4", "v16-22-g078bad"),
|
|
"v17~pre0-22-g078bad")
|
|
def test_long_default(self):
|
|
self.assertEqual(newfol.version.compute_version("v6~pre2",
|
|
"v5-1-gabcdef"), "v6~pre2-1-gabcdef")
|
|
self.assertEqual(newfol.version.compute_version("v17~pre5",
|
|
"v16-22-g078bad"), "v17~pre5-22-g078bad")
|
|
def test_long_pre(self):
|
|
self.assertEqual(newfol.version.compute_version("v6~pre",
|
|
"v5-1-gabcdef"), "v6~pre0-1-gabcdef")
|
|
self.assertEqual(newfol.version.compute_version("v17~pre",
|
|
"v16-22-g078bad"), "v17~pre0-22-g078bad")
|
|
|
|
if __name__ == '__main__':
|
|
unittest.main()
|