7
7
package semver
8
8
9
9
import (
10
+ "cmp"
10
11
"fmt"
11
12
"testing"
12
13
@@ -17,47 +18,93 @@ func TestRelaxedVersionComparator(t *testing.T) {
17
18
sign := map [int ]string {1 : ">" , 0 : "=" , - 1 : "<" }
18
19
ascending := func (list ... * RelaxedVersion ) {
19
20
for i := range list [0 : len (list )- 1 ] {
20
- a := list [i ]
21
- b := list [i + 1 ]
22
- comp := a .CompareTo (b )
23
- fmt .Printf ("%s %s %s\n " , a , sign [comp ], b )
24
- require .Equal (t , comp , - 1 )
25
- require .True (t , a .LessThan (b ))
26
- require .True (t , a .LessThanOrEqual (b ))
27
- require .False (t , a .Equal (b ))
28
- require .False (t , a .GreaterThanOrEqual (b ))
29
- require .False (t , a .GreaterThan (b ))
30
-
31
- comp = b .CompareTo (a )
32
- fmt .Printf ("%s %s %s\n " , b , sign [comp ], a )
33
- require .Equal (t , comp , 1 )
34
- require .False (t , b .LessThan (a ))
35
- require .False (t , b .LessThanOrEqual (a ))
36
- require .False (t , b .Equal (a ))
37
- require .True (t , b .GreaterThanOrEqual (a ))
38
- require .True (t , b .GreaterThan (a ))
39
- }
40
- }
41
- equal := func (list ... * RelaxedVersion ) {
42
- for _ , a := range list {
43
- for _ , b := range list {
21
+ {
22
+ a := list [i ]
23
+ b := list [i + 1 ]
44
24
comp := a .CompareTo (b )
45
25
fmt .Printf ("%s %s %s\n " , a , sign [comp ], b )
46
- require .Equal (t , comp , 0 )
47
- require .False (t , a .LessThan (b ))
26
+ require .Equal (t , comp , - 1 )
27
+ require .True (t , a .LessThan (b ))
48
28
require .True (t , a .LessThanOrEqual (b ))
49
- require .True (t , a .Equal (b ))
50
- require .True (t , a .GreaterThanOrEqual (b ))
29
+ require .False (t , a .Equal (b ))
30
+ require .False (t , a .GreaterThanOrEqual (b ))
51
31
require .False (t , a .GreaterThan (b ))
52
32
53
33
comp = b .CompareTo (a )
54
34
fmt .Printf ("%s %s %s\n " , b , sign [comp ], a )
55
- require .Equal (t , comp , 0 )
35
+ require .Equal (t , comp , 1 )
56
36
require .False (t , b .LessThan (a ))
57
- require .True (t , b .LessThanOrEqual (a ))
58
- require .True (t , b .Equal (a ))
37
+ require .False (t , b .LessThanOrEqual (a ))
38
+ require .False (t , b .Equal (a ))
59
39
require .True (t , b .GreaterThanOrEqual (a ))
60
- require .False (t , b .GreaterThan (a ))
40
+ require .True (t , b .GreaterThan (a ))
41
+ }
42
+ {
43
+ a := list [i ].SortableString ()
44
+ b := list [i + 1 ].SortableString ()
45
+ comp := cmp .Compare (a , b )
46
+ fmt .Printf ("%s %s %s\n " , a , sign [comp ], b )
47
+ require .Equal (t , comp , - 1 )
48
+ require .True (t , a < b )
49
+ require .True (t , a <= b )
50
+ require .False (t , a == b )
51
+ require .False (t , a >= b )
52
+ require .False (t , a > b )
53
+
54
+ comp = cmp .Compare (b , a )
55
+ fmt .Printf ("%s %s %s\n " , b , sign [comp ], a )
56
+ require .Equal (t , comp , 1 )
57
+ require .False (t , b < a )
58
+ require .False (t , b <= a )
59
+ require .False (t , b == a )
60
+ require .True (t , b >= a )
61
+ require .True (t , b > a )
62
+ }
63
+ }
64
+ }
65
+ equal := func (list ... * RelaxedVersion ) {
66
+ for _ , a := range list {
67
+ for _ , b := range list {
68
+ {
69
+ comp := a .CompareTo (b )
70
+ fmt .Printf ("%s %s %s\n " , a , sign [comp ], b )
71
+ require .Equal (t , comp , 0 )
72
+ require .False (t , a .LessThan (b ))
73
+ require .True (t , a .LessThanOrEqual (b ))
74
+ require .True (t , a .Equal (b ))
75
+ require .True (t , a .GreaterThanOrEqual (b ))
76
+ require .False (t , a .GreaterThan (b ))
77
+
78
+ comp = b .CompareTo (a )
79
+ fmt .Printf ("%s %s %s\n " , b , sign [comp ], a )
80
+ require .Equal (t , comp , 0 )
81
+ require .False (t , b .LessThan (a ))
82
+ require .True (t , b .LessThanOrEqual (a ))
83
+ require .True (t , b .Equal (a ))
84
+ require .True (t , b .GreaterThanOrEqual (a ))
85
+ require .False (t , b .GreaterThan (a ))
86
+ }
87
+ {
88
+ a := a .SortableString ()
89
+ b := b .SortableString ()
90
+ comp := cmp .Compare (a , b )
91
+ fmt .Printf ("%s %s %s\n " , a , sign [comp ], b )
92
+ require .Equal (t , comp , 0 )
93
+ require .False (t , a < b )
94
+ require .True (t , a <= b )
95
+ require .True (t , a == b )
96
+ require .True (t , a >= b )
97
+ require .False (t , a > b )
98
+
99
+ comp = cmp .Compare (b , a )
100
+ fmt .Printf ("%s %s %s\n " , b , sign [comp ], a )
101
+ require .Equal (t , comp , 0 )
102
+ require .False (t , b < a )
103
+ require .True (t , b <= a )
104
+ require .True (t , b == a )
105
+ require .True (t , b >= a )
106
+ require .False (t , b > a )
107
+ }
61
108
}
62
109
}
63
110
}
0 commit comments