TEST: Add version compare tests

This commit is contained in:
Thomas JANVIER 2025-01-16 16:42:16 +01:00 committed by Nyall Dawson
parent 4c67afa698
commit 0add86b7fa

View File

@ -53,16 +53,62 @@ class TestVersionCompare(QgisTestCase):
b = "1.0.0-2"
self.assertEqual(compareVersions(a, b), 2)
# test versions with suffixes
a = "1.0.0a"
b = "1.0.0b"
# test versions with long pre-release suffixes
a = "1.0.0alpha"
b = "1.0.0beta"
self.assertEqual(compareVersions(a, b), 2)
# test versions with PEP440 suffixes
a = "1.0.0a2"
b = "1.0.0b1"
self.assertEqual(compareVersions(a, b), 2)
# test versions with post suffixes
a = "1.0"
b = "1.0post1"
self.assertEqual(compareVersions(a, b), 2)
# test versions with different lengths
a = "1.0"
b = "1.0.1"
self.assertEqual(compareVersions(a, b), 2)
a = "2.0"
self.assertEqual(compareVersions(a, b), 1)
# test versions with suffixes in different cases
a = "1.0.0-201609011405-2690BD9"
b = "1.0.0-201609011405-2690bd9"
self.assertEqual(compareVersions(a, b), 0)
# test versions with different lengths
a = "1.0a1"
b = "1.0.1post2"
self.assertEqual(compareVersions(a, b), 2)
a = "2.0.1"
self.assertEqual(compareVersions(a, b), 1)
# test shorthand alphas
a = "1.0a1"
b = "1.0alpha1"
self.assertEqual(compareVersions(a, b), 0)
b = "1.0.alpha1"
self.assertEqual(compareVersions(a, b), 0)
b = "1.0.alpha.1"
self.assertEqual(compareVersions(a, b), 0)
# test partial versions
a = "1"
b = "1.0"
self.assertEqual(compareVersions(a, b), 0)
b = "1.0.0"
self.assertEqual(compareVersions(a, b), 0)
b = "1.0.0post1"
self.assertEqual(compareVersions(a, b), 2)
a = "1.0a1"
b = "1.0.0alpha1"
self.assertEqual(compareVersions(a, b), 0)
if __name__ == "__main__":
unittest.main()