File: test_versionlower.py

package info (click to toggle)
playonlinux 4.3.4-5
  • links: PTS, VCS
  • area: contrib
  • in suites: trixie
  • size: 8,252 kB
  • sloc: sh: 5,390; python: 5,150; ansic: 72; makefile: 57; xml: 47
file content (90 lines) | stat: -rw-r--r-- 2,486 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
#!/usr/bin/python3
import unittest
#import lib.playonlinux as playonlinux

def VersionLower(version1, version2):
    version1 = version1.split("-")
    version2 = version2.split("-")

    try:
        if(version1[1] != ""):
            dev1 = True
    except:
        dev1 = False

    try:
        if(version1[2] != ""):
            dev2 = True
    except:
        dev2 = False

    if(version1[0] == version2[0]):
        if(dev1 == True and dev2 == False):
            return True
        else:
            return False

    version1 = [ int(digit) for digit in version1[0].split(".") ]
    version2 = [ int(digit) for digit in version2[0].split(".") ]

    if(version1[0] < version2[0]):
        return True
    elif(version1[0] == version2[0]):
        if(version1[1] < version2[1]):
            return True
        elif(version1[1] == version2[1]):
            if(version1[2] < version2[2]):
                return True
            else:
                return False
        else:
            return False
    else:
        return False

class TestVersionLower(unittest.TestCase):

    def test_major_greater(self):
        self.assertTrue(VersionLower("4.0.0", "5.0.0"))

    def test_major_equal(self):
        self.assertFalse(VersionLower("4.0.0", "4.0.0"))

    def test_major_lesser(self):
        self.assertFalse(VersionLower("4.0.0", "3.0.0"))

    def test_minor_greater(self):
        self.assertTrue(VersionLower("4.0.0", "4.1.0"))

    def test_minor_equal(self):
        self.assertFalse(VersionLower("4.1.0", "4.1.0"))

    def test_minor_lesser(self):
        self.assertFalse(VersionLower("4.1.0", "4.0.0"))

    def test_tag_greater(self):
        self.assertTrue(VersionLower("4.0.0", "4.0.1"))

    def test_tag_equal(self):
        self.assertFalse(VersionLower("4.0.1", "4.0.1"))

    def test_tag_lesser(self):
        self.assertFalse(VersionLower("4.0.1", "4.0.0"))

# 4.0.0-dev < 4.0.0 < 4.0.1-dev < 4.0.1
    def test_dev_released(self):
        self.assertTrue(VersionLower("4.0.0-dev", "4.0.0"))
        self.assertFalse(VersionLower("4.0.0", "4.0.0-dev"))

    def test_next_dev(self):
        self.assertTrue(VersionLower("4.0.0", "4.0.1-dev"))
        self.assertFalse(VersionLower("4.0.1-dev", "4.0.0"))

    def test_bug_genant(self):
        self.assertFalse(VersionLower("4.1.10-dev", "4.1.9"))

    def test_ca_marchait_avant(self):
        self.assertFalse(VersionLower("4.0.10-dev", "4.0.9"))

if __name__ == '__main__':
    unittest.main()