2323 ["1.2.*" , [[">=" , "1.2.0" ], ["<" , "1.3.0" ]], ["1.2" , "1.2.1" ], ["2.1.0" , "2.2" ]],
2424 # https://github.com/dtolnay/semver/blob/master/tests/test_version_req.rs :
2525 # test_basic
26- # ["^1.0.0", [[]], ["1.0.0", "1.1.0", "1.0.1"], ["0.9.9", "0.10.0", "0.1.0", "1.0.0-pre", "1.0.1-pre"]],
26+ [
27+ "^1.0.0" ,
28+ [[]],
29+ ["1.0.0" , "1.1.0" , "1.0.1" ],
30+ ["0.9.9" , "0.10.0" , "0.1.0" , "1.0.0-pre" , "1.0.1-pre" ],
31+ ],
2732 # test_exact
28- ["=1.0.0" , [["=" , "1.0.0" ]], ["1.0.0" ], ["1.0.1" , "0.9.9" , "0.10.0" , "0.1.0" , "1.0.0-pre" ]],
33+ [
34+ "=1.0.0" ,
35+ [["=" , "1.0.0" ]],
36+ ["1.0.0" ],
37+ ["1.0.1" , "0.9.9" , "0.10.0" , "0.1.0" , "1.0.0-pre" ],
38+ ],
2939 ["=0.9.0" , [["=" , "0.9.0" ]], ["0.9.0" ], ["0.9.1" , "1.9.0" , "0.0.9" , "0.9.0-pre" ]],
3040 ["=0.0.2" , [["=" , "0.0.2" ]], ["0.0.2" ], ["0.0.1" , "0.0.3" , "0.0.2-pre" ]],
3141 [
3545 ["0.9.1" , "0.1.0" , "0.1.1-beta2.a" , "0.1.0-beta2" ],
3646 ],
3747 # https://github.com/dtolnay/semver/blob/master/tests/test_version_req.rs#L73
38- # ["=0.1.0+meta", [["=", "0.1.0+meta"]], ["0.1.0", "0.1.0+meta", "0.1.0+any"], []],
48+ ["=0.1.0+meta" , [["=" , "0.1.0+meta" ]], ["0.1.0" , "0.1.0+meta" , "0.1.0+any" ], []],
3949 # test_greater_than
40- # [">= 1.0.0", [[]], ["1.0.0", "2.0.0"], ["0.1.0", "0.0.1", "1.0.0-pre", "2.0.0-pre"]],
41- # [">= 2.1.0-alpha2", [[]], ["2.1.0-alpha2", "2.1.0-alpha3", "2.1.0", "3.0.0"], ["2.0.0", "2.1.0-alpha1", "2.0.0-alpha2", "3.0.0-alpha2"]],
50+ [
51+ ">= 1.0.0" ,
52+ [[]],
53+ ["1.0.0" , "2.0.0" ],
54+ ["0.1.0" , "0.0.1" , "1.0.0-pre" , "2.0.0-pre" ],
55+ ],
56+ [
57+ ">= 2.1.0-alpha2" ,
58+ [[]],
59+ ["2.1.0-alpha2" , "2.1.0-alpha3" , "2.1.0" , "3.0.0" ],
60+ ["2.0.0" , "2.1.0-alpha1" , "2.0.0-alpha2" , "3.0.0-alpha2" ],
61+ ],
4262 # test_less_than
43- # ["<1.0.0", [[]], ["0.1.0", "0.0.1"], ["1.0.0", "1.0.0-beta", "1.0.1", "0.9.9-alpha"]],
44- # ["<= 2.1.0-alpha2", [[]], ["2.1.0-alpha2", "2.1.0-alpha1", "2.0.0", "1.0.0"], ["2.1.0", "2.2.0-alpha1", "2.0.0-alpha2", "1.0.0-alpha2"]],
45- # [">1.0.0-alpha, <1.0.0", [[">", "2.1.0-alpha2"], ["<", "1.0.0"]], ["1.0.0-beta"], []],
46- # [">1.0.0-alpha, <1.0", [[">", "1.0.0-alpha"], ["<", "1.0"]]], ["1.0.0-beta"], []],
63+ [
64+ "<1.0.0" ,
65+ [[]],
66+ ["0.1.0" , "0.0.1" ],
67+ ["1.0.0" , "1.0.0-beta" , "1.0.1" , "0.9.9-alpha" ],
68+ ],
69+ [
70+ "<= 2.1.0-alpha2" ,
71+ [[]],
72+ ["2.1.0-alpha2" , "2.1.0-alpha1" , "2.0.0" , "1.0.0" ],
73+ ["2.1.0" , "2.2.0-alpha1" , "2.0.0-alpha2" , "1.0.0-alpha2" ],
74+ ],
75+ [
76+ ">1.0.0-alpha, <1.0.0" ,
77+ [[">" , "2.1.0-alpha2" ], ["<" , "1.0.0" ]],
78+ ["1.0.0-beta" ],
79+ [],
80+ ],
81+ [">1.0.0-alpha, <1.0" , [[">" , "1.0.0-alpha" ], ["<" , "1.0" ]], ["1.0.0-beta" ], []],
4782 [">1.0.0-alpha, <1" , [[">" , "1.0.0-alpha" ], ["<" , "1" ]], ["1.0.0-beta" ], []],
4883 # test_multiple
4984 ["> 0.0.9, <= 2.5.3" , [[]], ["0.0.10" , "1.0.0" , "2.5.3" ], ["0.0.8" , "2.5.4" ]],
50- # ["^0.3.0, ^0.4.0", [[]], [], ["0.0.8", "0.3.0", "0.4.0"]],
51- # ["<=0.2.0, >=0.5.0", [[]], [], ["0.0.8", "0.3.0", "0.5.1"]],
52- # ["^0.1.0, ^0.1.4, ^0.1.6", [[]], ["0.1.6", "0.1.9"], ["0.1.0", "0.1.4", "0.2.0"]],
53- # [">=0.5.1-alpha3, <0.6", [[[">", "0.5.1-alpha3"], ["=", "0.5.1-alpha3"], ["<", "0.6"]]], ["0.5.1-alpha3", "0.5.1-alpha4", "0.5.1-beta", "0.5.1", "0.5.5"], ["0.5.1-alpha1", "0.5.2-alpha3", "0.5.5-pre", "0.5.0-pre"]],
85+ ["^0.3.0, ^0.4.0" , [[]], [], ["0.0.8" , "0.3.0" , "0.4.0" ]],
86+ ["<=0.2.0, >=0.5.0" , [[]], [], ["0.0.8" , "0.3.0" , "0.5.1" ]],
87+ ["^0.1.0, ^0.1.4, ^0.1.6" , [[]], ["0.1.6" , "0.1.9" ], ["0.1.0" , "0.1.4" , "0.2.0" ]],
88+ [
89+ ">=0.5.1-alpha3, <0.6" ,
90+ [[[">" , "0.5.1-alpha3" ], ["=" , "0.5.1-alpha3" ], ["<" , "0.6" ]]],
91+ ["0.5.1-alpha3" , "0.5.1-alpha4" , "0.5.1-beta" , "0.5.1" , "0.5.5" ],
92+ ["0.5.1-alpha1" , "0.5.2-alpha3" , "0.5.5-pre" , "0.5.0-pre" ],
93+ ],
5494 # test_tilde
5595 ["~1" , [[]], ["1.0.0" , "1.0.1" , "1.1.1" ], ["0.9.1" , "2.9.0" , "0.0.9" ]],
5696 ["~1.2" , [[]], ["1.2.0" , "1.2.1" ], ["1.1.1" , "1.3.0" , "0.0.9" ]],
5797 ["~1.2.2" , [[]], ["1.2.2" , "1.2.4" ], ["1.2.1" , "1.9.0" , "1.0.9" , "2.0.1" , "0.1.3" ]],
58- # ["~1.2.3-beta.2", [[]], ["1.2.3", "1.2.4", "1.2.3-beta.2", "1.2.3-beta.4"],
59- # ["1.3.3", "1.1.4", "1.2.3-beta.1", "1.2.4-beta.2"]],
98+ [
99+ "~1.2.3-beta.2" ,
100+ [[]],
101+ ["1.2.3" , "1.2.4" , "1.2.3-beta.2" , "1.2.3-beta.4" ],
102+ ["1.3.3" , "1.1.4" , "1.2.3-beta.1" , "1.2.4-beta.2" ],
103+ ],
60104 # test_caret
61- # ["^1", [[]], ["1.1.2", "1.1.0", "1.2.1", "1.0.1"],
62- # ["0.9.1", "2.9.0", "0.1.4", "1.0.0-beta1", "0.1.0-alpha", "1.0.1-pre"]],
105+ [
106+ "^1" ,
107+ [[]],
108+ ["1.1.2" , "1.1.0" , "1.2.1" , "1.0.1" ],
109+ ["0.9.1" , "2.9.0" , "0.1.4" , "1.0.0-beta1" , "0.1.0-alpha" , "1.0.1-pre" ],
110+ ],
63111 ["^1.1" , [[]], ["1.1.2" , "1.1.0" , "1.2.1" ], ["0.9.1" , "2.9.0" , "1.0.1" , "0.1.4" ]],
64- # ["^1.1.2", [[]], ["1.1.2", "1.1.4", "1.2.1"],
65- # ["0.9.1", "2.9.0", "1.1.1", "0.0.1", "1.1.2-alpha1", "1.1.3-alpha1", "2.9.0-alpha1"]],
66- # ["^0.1.2", [[]], ["0.1.2", "0.1.4"],
67- # ["0.9.1", "2.9.0", "1.1.1", "0.0.1", "0.1.2-beta", "0.1.3-alpha", "0.2.0-pre"]],
68- # ["^0.5.1-alpha3", [[]], ["0.5.1-alpha3", "0.5.1-alpha4", "0.5.1-beta", "0.5.1", "0.5.5", ],
69- # ["0.5.1-alpha1", "0.5.2-alpha3", "0.5.5-pre", "0.5.0-pre", "0.6.0"]],
112+ [
113+ "^1.1.2" ,
114+ [[]],
115+ ["1.1.2" , "1.1.4" , "1.2.1" ],
116+ [
117+ "0.9.1" ,
118+ "2.9.0" ,
119+ "1.1.1" ,
120+ "0.0.1" ,
121+ "1.1.2-alpha1" ,
122+ "1.1.3-alpha1" ,
123+ "2.9.0-alpha1" ,
124+ ],
125+ ],
126+ [
127+ "^0.1.2" ,
128+ [[]],
129+ ["0.1.2" , "0.1.4" ],
130+ ["0.9.1" , "2.9.0" , "1.1.1" , "0.0.1" , "0.1.2-beta" , "0.1.3-alpha" , "0.2.0-pre" ],
131+ ],
132+ [
133+ "^0.5.1-alpha3" ,
134+ [[]],
135+ [
136+ "0.5.1-alpha3" ,
137+ "0.5.1-alpha4" ,
138+ "0.5.1-beta" ,
139+ "0.5.1" ,
140+ "0.5.5" ,
141+ ],
142+ ["0.5.1-alpha1" , "0.5.2-alpha3" , "0.5.5-pre" , "0.5.0-pre" , "0.6.0" ],
143+ ],
70144 ["^0.0.2" , [[]], ["0.0.2" ], ["0.9.1" , "2.9.0" , "1.1.1" , "0.0.1" , "0.1.4" ]],
71- # ["^0.0", [[]], ["0.0.2", "0.0.0"],
72- # ["0.9.1", "2.9.0", "1.1.1", "0.0.1", "0.1.4"]],
145+ ["^0.0" , [[]], ["0.0.2" , "0.0.0" ], ["0.9.1" , "2.9.0" , "1.1.1" , "0.0.1" , "0.1.4" ]],
73146 ["^0" , [[]], ["0.9.1" , "0.0.2" , "0.0.0" ], ["2.9.0" , "1.1.1" ]],
74- # ["^1.4.2-beta.5", [[]], ["1.4.2", "1.4.3", "1.4.2-beta.5", "1.4.2-beta.6", "1.4.2-c"],
75- # ["0.9.9", "2.0.0", "1.4.2-alpha", "1.4.2-beta.4", "1.4.3-beta.5"]],
147+ [
148+ "^1.4.2-beta.5" ,
149+ [[]],
150+ ["1.4.2" , "1.4.3" , "1.4.2-beta.5" , "1.4.2-beta.6" , "1.4.2-c" ],
151+ ["0.9.9" , "2.0.0" , "1.4.2-alpha" , "1.4.2-beta.4" , "1.4.3-beta.5" ],
152+ ],
76153 # test_wildcard
77154 # https://github.com/dtolnay/semver/blob/master/tests/test_version_req.rs#L272
78- # ["*", [[]], ["0.9.1", "2.9.0", "0.0.9", "1.0.1", "1.1.1"],
79- # ["1.0.0-pre"]],
80- # ["1.*", [[]], ["1.2.0", "1.2.1", "1.1.1", "1.3.0"],
81- # ["0.0.9", "1.2.0-pre"]],
82- # ["1.2.*", [[]], ["1.2.0", "1.2.2", "1.2.4"],
83- # ["1.9.0", "1.0.9", "2.0.1", "0.1.3", "1.2.2-pre"]],
155+ ["*" , [[]], ["0.9.1" , "2.9.0" , "0.0.9" , "1.0.1" , "1.1.1" ], ["1.0.0-pre" ]],
156+ ["1.*" , [[]], ["1.2.0" , "1.2.1" , "1.1.1" , "1.3.0" ], ["0.0.9" , "1.2.0-pre" ]],
157+ [
158+ "1.2.*" ,
159+ [[]],
160+ ["1.2.0" , "1.2.2" , "1.2.4" ],
161+ ["1.9.0" , "1.0.9" , "2.0.1" , "0.1.3" , "1.2.2-pre" ],
162+ ],
84163 # test_pre
85- # ["=2.1.1-really.0", [[]], ["2.1.1-really.0"], []]
164+ ["=2.1.1-really.0" , [[]], ["2.1.1-really.0" ], []],
86165 # test_cargo3202
87166 ["0.*.*" , [[]], ["0.5.0" ], []],
88167]
91170error_list = [
92171 "> 0.1.0," ,
93172 "> 0.3.0, ," ,
94- # "1.2.3 - 2.3.4",
95- # "> 0.0.9 <= 2.5.3",
96- # "=1.2.3 || =2.3.4",
97- # "1.1 || =1.2.3",
173+ "1.2.3 - 2.3.4" ,
174+ "> 0.0.9 <= 2.5.3" ,
175+ "=1.2.3 || =2.3.4" ,
176+ "1.1 || =1.2.3" ,
98177 "6.* || 8.* || >= 10.*" ,
99- # ">= >= 0.0.2",
100- # ">== 0.0.2",
101- # "a.0.0",
102- # "1.0.0-",
103- # ">=",
178+ ">= >= 0.0.2" ,
179+ ">== 0.0.2" ,
180+ "a.0.0" ,
181+ "1.0.0-" ,
182+ ">=" ,
104183 "*.1" ,
105184 "1.*.1" ,
106185 ">=1.*.1" ,
@@ -124,4 +203,4 @@ def test_range(version_range, conditions, versions_in, versions_out):
124203def test_error ():
125204 for version_range in error_list :
126205 with pytest .raises (InvalidVersionRange ):
127- CargoVersionRange .from_native (version_range )
206+ CargoVersionRange .from_native (version_range )
0 commit comments