GlueGen v2.6.0-rc-20250712
GlueGen, Native Binding Generator for Java™ (public API).
TestVersionNumber.java
Go to the documentation of this file.
1/**
2 * Copyright 2012 JogAmp Community. All rights reserved.
3 *
4 * Redistribution and use in source and binary forms, with or without modification, are
5 * permitted provided that the following conditions are met:
6 *
7 * 1. Redistributions of source code must retain the above copyright notice, this list of
8 * conditions and the following disclaimer.
9 *
10 * 2. Redistributions in binary form must reproduce the above copyright notice, this list
11 * of conditions and the following disclaimer in the documentation and/or other materials
12 * provided with the distribution.
13 *
14 * THIS SOFTWARE IS PROVIDED BY JogAmp Community ``AS IS'' AND ANY EXPRESS OR IMPLIED
15 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
16 * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL JogAmp Community OR
17 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
18 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
19 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
20 * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
21 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
22 * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
23 *
24 * The views and conclusions contained in the software and documentation are those of the
25 * authors and should not be interpreted as representing official policies, either expressed
26 * or implied, of JogAmp Community.
27 */
28
29package com.jogamp.common.util;
30
31import java.io.IOException;
32
33import org.junit.Assert;
34import org.junit.Test;
35
36import com.jogamp.junit.util.SingletonJunitCase;
37
38import org.junit.FixMethodOrder;
39import org.junit.runners.MethodSorters;
40
41@FixMethodOrder(MethodSorters.NAME_ASCENDING)
43
44 @Test
45 public void test01() {
46 final String vs00 = "1.0.16";
47 final String vs01 = "OpenGL ES GLSL ES 1.0.16";
48 final String vs02 = "1.0.16 OpenGL ES GLSL ES";
49 final VersionNumber vn0 = new VersionNumber(1, 0, 16);
50 Assert.assertTrue(vn0.hasMajor());
51 Assert.assertTrue(vn0.hasMinor());
52 Assert.assertTrue(vn0.hasSub());
53
55
56 vn = new VersionNumber(vs00);
57 Assert.assertTrue(vn.hasMajor());
58 Assert.assertTrue(vn.hasMinor());
59 Assert.assertTrue(vn.hasSub());
60 Assert.assertEquals(vn0, vn);
61
62 vn = new VersionNumber(vs01);
63 Assert.assertTrue(vn.hasMajor());
64 Assert.assertTrue(vn.hasMinor());
65 Assert.assertTrue(vn.hasSub());
66 Assert.assertEquals(vn0, vn);
67
68 vn = new VersionNumber(vs02);
69 Assert.assertTrue(vn.hasMajor());
70 Assert.assertTrue(vn.hasMinor());
71 Assert.assertTrue(vn.hasSub());
72 Assert.assertEquals(vn0, vn);
73 }
74 @Test
75 public void test01b() {
76 final String delim = ",";
77
78 final String vs00 = "1,0,16";
79 final String vs01 = "OpenGL ES GLSL ES 1,0,16";
80 final String vs02 = "1,0,16 OpenGL ES GLSL ES";
81 final VersionNumber vn0 = new VersionNumber(1, 0, 16);
82 Assert.assertTrue(vn0.hasMajor());
83 Assert.assertTrue(vn0.hasMinor());
84 Assert.assertTrue(vn0.hasSub());
85
87
88 vn = new VersionNumber(vs00, delim);
89 Assert.assertTrue(vn.hasMajor());
90 Assert.assertTrue(vn.hasMinor());
91 Assert.assertTrue(vn.hasSub());
92 Assert.assertEquals(vn0, vn);
93
94 vn = new VersionNumber(vs01, delim);
95 Assert.assertTrue(vn.hasMajor());
96 Assert.assertTrue(vn.hasMinor());
97 Assert.assertTrue(vn.hasSub());
98 Assert.assertEquals(vn0, vn);
99
100 vn = new VersionNumber(vs02, delim);
101 Assert.assertTrue(vn.hasMajor());
102 Assert.assertTrue(vn.hasMinor());
103 Assert.assertTrue(vn.hasSub());
104 Assert.assertEquals(vn0, vn);
105 }
106
107 @Test
108 public void test02() {
109 final String vs00 = "4.20";
110 final String vs01 = "COMPANY via Stupid tool 4.20";
111 final String vs02 = "4.20 COMPANY via Stupid tool";
112 final VersionNumber vn0 = new VersionNumber(4, 20, 0);
113 Assert.assertTrue(vn0.hasMajor());
114 Assert.assertTrue(vn0.hasMinor());
115 Assert.assertTrue(vn0.hasSub());
116
117 VersionNumber vn;
118
119 vn = new VersionNumber(vs00);
120 Assert.assertTrue(vn.hasMajor());
121 Assert.assertTrue(vn.hasMinor());
122 Assert.assertTrue(!vn.hasSub());
123 Assert.assertEquals(vn0, vn);
124
125 vn = new VersionNumber(vs01);
126 Assert.assertTrue(vn.hasMajor());
127 Assert.assertTrue(vn.hasMinor());
128 Assert.assertTrue(!vn.hasSub());
129 Assert.assertEquals(vn0, vn);
130
131 vn = new VersionNumber(vs02);
132 Assert.assertTrue(vn.hasMajor());
133 Assert.assertTrue(vn.hasMinor());
134 Assert.assertTrue(!vn.hasSub());
135 Assert.assertEquals(vn0, vn);
136 }
137
138 @Test
139 public void test02b() {
140 final String delim = ",";
141
142 final String vs00 = "4,20";
143 final String vs01 = "COMPANY via Stupid tool 4,20";
144 final String vs02 = "4,20 COMPANY via Stupid tool";
145 final VersionNumber vn0 = new VersionNumber(4, 20, 0);
146 Assert.assertTrue(vn0.hasMajor());
147 Assert.assertTrue(vn0.hasMinor());
148 Assert.assertTrue(vn0.hasSub());
149
150 VersionNumber vn;
151
152 vn = new VersionNumber(vs00, delim);
153 Assert.assertTrue(vn.hasMajor());
154 Assert.assertTrue(vn.hasMinor());
155 Assert.assertTrue(!vn.hasSub());
156 Assert.assertEquals(vn0, vn);
157
158 vn = new VersionNumber(vs01, delim);
159 Assert.assertTrue(vn.hasMajor());
160 Assert.assertTrue(vn.hasMinor());
161 Assert.assertTrue(!vn.hasSub());
162 Assert.assertEquals(vn0, vn);
163
164 vn = new VersionNumber(vs02, delim);
165 Assert.assertTrue(vn.hasMajor());
166 Assert.assertTrue(vn.hasMinor());
167 Assert.assertTrue(!vn.hasSub());
168 Assert.assertEquals(vn0, vn);
169 }
170
171 @Test
172 public void test03() {
173 final String vs00 = "A10.11.12b";
174 final String vs01 = "Prelim Text 10.Funny11.Weird12 Something is odd";
175 final String vs02 = "Prelim Text 10.Funny11l1.Weird12 2 Something is odd";
176 final VersionNumber vn0 = new VersionNumber(10, 11, 12);
177 Assert.assertTrue(vn0.hasMajor());
178 Assert.assertTrue(vn0.hasMinor());
179 Assert.assertTrue(vn0.hasSub());
180
181 VersionNumber vn;
182
183 vn = new VersionNumber(vs00);
184 Assert.assertTrue(vn.hasMajor());
185 Assert.assertTrue(vn.hasMinor());
186 Assert.assertTrue(vn.hasSub());
187 Assert.assertEquals(vn0, vn);
188
189 vn = new VersionNumber(vs01);
190 Assert.assertTrue(vn.hasMajor());
191 Assert.assertTrue(vn.hasMinor());
192 Assert.assertTrue(vn.hasSub());
193 Assert.assertEquals(vn0, vn);
194
195 vn = new VersionNumber(vs02);
196 Assert.assertTrue(vn.hasMajor());
197 Assert.assertTrue(vn.hasMinor());
198 Assert.assertTrue(vn.hasSub());
199 Assert.assertEquals(vn0, vn);
200 }
201
202 @Test
203 public void test03b() {
204 final String delim = ",";
205
206 final String vs00 = "A10,11,12b";
207 final String vs01 = "Prelim Text 10,Funny11,Weird12 Something is odd";
208 final String vs02 = "Prelim Text 10,Funny11l1,Weird12 2 Something is odd";
209 final VersionNumber vn0 = new VersionNumber(10, 11, 12);
210 Assert.assertTrue(vn0.hasMajor());
211 Assert.assertTrue(vn0.hasMinor());
212 Assert.assertTrue(vn0.hasSub());
213
214 VersionNumber vn;
215
216 vn = new VersionNumber(vs00, delim);
217 Assert.assertTrue(vn.hasMajor());
218 Assert.assertTrue(vn.hasMinor());
219 Assert.assertTrue(vn.hasSub());
220 Assert.assertEquals(vn0, vn);
221
222 vn = new VersionNumber(vs01, delim);
223 Assert.assertTrue(vn.hasMajor());
224 Assert.assertTrue(vn.hasMinor());
225 Assert.assertTrue(vn.hasSub());
226 Assert.assertEquals(vn0, vn);
227
228 vn = new VersionNumber(vs02, delim);
229 Assert.assertTrue(vn.hasMajor());
230 Assert.assertTrue(vn.hasMinor());
231 Assert.assertTrue(vn.hasSub());
232 Assert.assertEquals(vn0, vn);
233 }
234
235 @Test
236 public void test04() {
237 final String vs00 = "A10.11.12b (git-d6c318e)";
238 final String vs01 = "Prelim Text 10.Funny11.Weird12 Something is odd (git-d6c318e)";
239 final String vs02 = "Prelim Text 10.Funny11l1.Weird12 2 Something is odd (git-d6c318e)";
240 final VersionNumber vn0 = new VersionNumber(10, 11, 12);
241 Assert.assertTrue(vn0.hasMajor());
242 Assert.assertTrue(vn0.hasMinor());
243 Assert.assertTrue(vn0.hasSub());
244
245 VersionNumber vn;
246
247 vn = new VersionNumber(vs00);
248 Assert.assertTrue(vn.hasMajor());
249 Assert.assertTrue(vn.hasMinor());
250 Assert.assertTrue(vn.hasSub());
251 Assert.assertEquals(vn0, vn);
252
253 vn = new VersionNumber(vs01);
254 Assert.assertTrue(vn.hasMajor());
255 Assert.assertTrue(vn.hasMinor());
256 Assert.assertTrue(vn.hasSub());
257 Assert.assertEquals(vn0, vn);
258
259 vn = new VersionNumber(vs02);
260 Assert.assertTrue(vn.hasMajor());
261 Assert.assertTrue(vn.hasMinor());
262 Assert.assertTrue(vn.hasSub());
263 Assert.assertEquals(vn0, vn);
264 }
265 @Test
266 public void test04b() {
267 final String delim = ",";
268
269 final String vs00 = "A10,11,12b (git-d6c318e)";
270 final String vs01 = "Prelim Text 10,Funny11,Weird12 Something is odd (git-d6c318e)";
271 final String vs02 = "Prelim Text 10,Funny11l1,Weird12 2 Something is odd (git-d6c318e)";
272 final VersionNumber vn0 = new VersionNumber(10, 11, 12);
273 Assert.assertTrue(vn0.hasMajor());
274 Assert.assertTrue(vn0.hasMinor());
275 Assert.assertTrue(vn0.hasSub());
276
277 VersionNumber vn;
278
279 vn = new VersionNumber(vs00, delim);
280 Assert.assertTrue(vn.hasMajor());
281 Assert.assertTrue(vn.hasMinor());
282 Assert.assertTrue(vn.hasSub());
283 Assert.assertEquals(vn0, vn);
284
285 vn = new VersionNumber(vs01, delim);
286 Assert.assertTrue(vn.hasMajor());
287 Assert.assertTrue(vn.hasMinor());
288 Assert.assertTrue(vn.hasSub());
289 Assert.assertEquals(vn0, vn);
290
291 vn = new VersionNumber(vs02, delim);
292 Assert.assertTrue(vn.hasMajor());
293 Assert.assertTrue(vn.hasMinor());
294 Assert.assertTrue(vn.hasSub());
295 Assert.assertEquals(vn0, vn);
296 }
297
298 public static void main(final String args[]) throws IOException {
299 final String tstname = TestVersionNumber.class.getName();
300 org.junit.runner.JUnitCore.main(tstname);
301 }
302
303}
static void main(final String args[])
Simple version number class containing a version number either being defined explicit or derived from...
final boolean hasSub()
Returns true, if the optional sub component is defined explicitly, otherwise false.
final boolean hasMajor()
Returns true, if the major component is defined explicitly, otherwise false.
final boolean hasMinor()
Returns true, if the optional minor component is defined explicitly, otherwise false.