#!/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()