newfol/test/testversion.py
brian m. carlson ae4de78165
Compute the version automatically from git.
Also included are unit tests to verify the behavior of the new version
computation functions.

Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
2013-10-12 19:17:32 +00:00

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()