View Javadoc
1   /*
2    * Licensed to the Apache Software Foundation (ASF) under one
3    * or more contributor license agreements.  See the NOTICE file
4    * distributed with this work for additional information
5    * regarding copyright ownership.  The ASF licenses this file
6    * to you under the Apache License, Version 2.0 (the
7    * "License"); you may not use this file except in compliance
8    * with the License.  You may obtain a copy of the License at
9    *
10   * https://www.apache.org/licenses/LICENSE-2.0
11   *
12   * Unless required by applicable law or agreed to in writing,
13   * software distributed under the License is distributed on an
14   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15   * KIND, either express or implied.  See the License for the
16   * specific language governing permissions and limitations
17   * under the License.
18   */
19  
20  package org.apache.commons.lang3;
21  
22  import static org.junit.jupiter.api.Assertions.assertEquals;
23  import static org.junit.jupiter.api.Assertions.assertFalse;
24  import static org.junit.jupiter.api.Assertions.assertNotNull;
25  import static org.junit.jupiter.api.Assertions.assertNull;
26  import static org.junit.jupiter.api.Assertions.assertTrue;
27  
28  import java.io.File;
29  import java.lang.reflect.Constructor;
30  import java.lang.reflect.Field;
31  import java.lang.reflect.Modifier;
32  import java.nio.file.Files;
33  import java.nio.file.Path;
34  import java.util.Locale;
35  
36  import org.junit.jupiter.api.Test;
37  
38  /**
39   * Tests {@link SystemUtils}.
40   *
41   * Only limited testing can be performed.
42   */
43  class SystemUtilsTest extends AbstractLangTest {
44  
45      /**
46       * Returns the value of the SystemUtils.IS_JAVA_X field for the versions >= 9.
47       */
48      private boolean getIS_JAVA(final int version) throws Exception {
49          return SystemUtils.class.getField("IS_JAVA_" + version).getBoolean(null);
50      }
51  
52      /**
53       * Returns the last supported version with the SystemUtils.IS_JAVA_X fields.
54       */
55      public int getLastSupportedJavaVersion() {
56          int lastSupportedVersion = 0;
57          for (final Field field : SystemUtils.class.getFields()) {
58              if (field.getName().matches("IS_JAVA_\\d+")) {
59                  lastSupportedVersion = Math.max(lastSupportedVersion, Integer.parseInt(field.getName().substring(8)));
60              }
61          }
62          return lastSupportedVersion;
63      }
64  
65      @Test
66      @SuppressWarnings("deprecation")
67      void test_IS_JAVA() throws Exception {
68          final String javaVersion = SystemUtils.JAVA_VERSION;
69          final int lastSupportedVersion = getLastSupportedJavaVersion();
70          if (javaVersion == null) {
71              assertFalse(SystemUtils.IS_JAVA_1_1);
72              assertFalse(SystemUtils.IS_JAVA_1_2);
73              assertFalse(SystemUtils.IS_JAVA_1_3);
74              assertFalse(SystemUtils.IS_JAVA_1_4);
75              assertFalse(SystemUtils.IS_JAVA_1_5);
76              assertFalse(SystemUtils.IS_JAVA_1_6);
77              assertFalse(SystemUtils.IS_JAVA_1_7);
78              assertFalse(SystemUtils.IS_JAVA_1_8);
79              assertFalse(SystemUtils.IS_JAVA_1_9);
80              assertFalse(SystemUtils.IS_JAVA_10);
81              assertFalse(SystemUtils.IS_JAVA_11);
82              assertFalse(SystemUtils.IS_JAVA_12);
83              assertFalse(SystemUtils.IS_JAVA_13);
84              assertFalse(SystemUtils.IS_JAVA_14);
85              assertFalse(SystemUtils.IS_JAVA_15);
86              assertFalse(SystemUtils.IS_JAVA_16);
87              assertFalse(SystemUtils.IS_JAVA_17);
88              assertFalse(SystemUtils.IS_JAVA_18);
89              assertFalse(SystemUtils.IS_JAVA_19);
90              assertFalse(SystemUtils.IS_JAVA_20);
91              assertFalse(SystemUtils.IS_JAVA_21);
92              assertFalse(SystemUtils.IS_JAVA_22);
93              assertFalse(SystemUtils.IS_JAVA_23);
94              assertFalse(SystemUtils.IS_JAVA_24);
95              assertFalse(SystemUtils.IS_JAVA_25);
96              assertFalse(SystemUtils.IS_JAVA_26);
97              for (int version = 9; version <= lastSupportedVersion; version++) {
98                  assertFalse(getIS_JAVA(version));
99              }
100         } else if (javaVersion.startsWith("1.8")) {
101             assertFalse(SystemUtils.IS_JAVA_1_1);
102             assertFalse(SystemUtils.IS_JAVA_1_2);
103             assertFalse(SystemUtils.IS_JAVA_1_3);
104             assertFalse(SystemUtils.IS_JAVA_1_4);
105             assertFalse(SystemUtils.IS_JAVA_1_5);
106             assertFalse(SystemUtils.IS_JAVA_1_6);
107             assertFalse(SystemUtils.IS_JAVA_1_7);
108             assertTrue(SystemUtils.IS_JAVA_1_8);
109             assertFalse(SystemUtils.IS_JAVA_1_9);
110             assertFalse(SystemUtils.IS_JAVA_10);
111             assertFalse(SystemUtils.IS_JAVA_11);
112             assertFalse(SystemUtils.IS_JAVA_12);
113             assertFalse(SystemUtils.IS_JAVA_13);
114             assertFalse(SystemUtils.IS_JAVA_14);
115             assertFalse(SystemUtils.IS_JAVA_15);
116             assertFalse(SystemUtils.IS_JAVA_16);
117             assertFalse(SystemUtils.IS_JAVA_17);
118             assertFalse(SystemUtils.IS_JAVA_18);
119             assertFalse(SystemUtils.IS_JAVA_19);
120             assertFalse(SystemUtils.IS_JAVA_20);
121             assertFalse(SystemUtils.IS_JAVA_21);
122             assertFalse(SystemUtils.IS_JAVA_22);
123             assertFalse(SystemUtils.IS_JAVA_23);
124             assertFalse(SystemUtils.IS_JAVA_24);
125             assertFalse(SystemUtils.IS_JAVA_25);
126             assertFalse(SystemUtils.IS_JAVA_26);
127             for (int version = 9; version <= lastSupportedVersion; version++) {
128                 assertFalse(getIS_JAVA(version));
129             }
130         } else if (!javaVersion.startsWith("1.")) {
131             assertFalse(SystemUtils.IS_JAVA_1_1);
132             assertFalse(SystemUtils.IS_JAVA_1_2);
133             assertFalse(SystemUtils.IS_JAVA_1_3);
134             assertFalse(SystemUtils.IS_JAVA_1_4);
135             assertFalse(SystemUtils.IS_JAVA_1_5);
136             assertFalse(SystemUtils.IS_JAVA_1_6);
137             assertFalse(SystemUtils.IS_JAVA_1_7);
138             assertFalse(SystemUtils.IS_JAVA_1_8);
139             assertEquals(javaVersion.startsWith("9"), SystemUtils.IS_JAVA_1_9);
140             for (int version = 9; version <= lastSupportedVersion; version++) {
141                 assertEquals(javaVersion.startsWith("" + version), getIS_JAVA(version));
142             }
143         } else {
144             System.out.println("Can't test IS_JAVA value: " + javaVersion);
145         }
146     }
147 
148     @Test
149     void test_IS_OS() {
150         final String osName = System.getProperty("os.name");
151         if (osName == null) {
152             assertFalse(SystemUtils.IS_OS_WINDOWS);
153             assertFalse(SystemUtils.IS_OS_UNIX);
154             assertFalse(SystemUtils.IS_OS_SOLARIS);
155             assertFalse(SystemUtils.IS_OS_LINUX);
156             assertFalse(SystemUtils.IS_OS_MAC_OSX);
157             assertFalse(SystemUtils.IS_OS_NETWARE);
158         } else if (osName.startsWith("Windows")) {
159             assertTrue(SystemUtils.IS_OS_WINDOWS);
160             assertFalse(SystemUtils.IS_OS_ANDROID);
161             assertFalse(SystemUtils.IS_OS_UNIX);
162             assertFalse(SystemUtils.IS_OS_NETWARE);
163         } else if (osName.startsWith("Solaris")) {
164             assertTrue(SystemUtils.IS_OS_SOLARIS);
165             assertTrue(SystemUtils.IS_OS_UNIX);
166             assertFalse(SystemUtils.IS_OS_ANDROID);
167             assertFalse(SystemUtils.IS_OS_WINDOWS);
168             assertFalse(SystemUtils.IS_OS_NETWARE);
169         } else if (osName.toLowerCase(Locale.ENGLISH).startsWith("linux")) {
170             assertTrue(SystemUtils.IS_OS_LINUX);
171             assertTrue(SystemUtils.IS_OS_UNIX);
172             assertFalse(SystemUtils.IS_OS_WINDOWS);
173             assertFalse(SystemUtils.IS_OS_NETWARE);
174         } else if (osName.startsWith("Mac OS X")) {
175             assertTrue(SystemUtils.IS_OS_MAC_OSX);
176             assertTrue(SystemUtils.IS_OS_UNIX);
177             assertFalse(SystemUtils.IS_OS_ANDROID);
178             assertFalse(SystemUtils.IS_OS_WINDOWS);
179             assertFalse(SystemUtils.IS_OS_NETWARE);
180             // @formatter:off
181             final boolean[] macOsValues = {
182                     SystemUtils.IS_OS_MAC_OSX_BIG_SUR,
183                     SystemUtils.IS_OS_MAC_OSX_CATALINA,
184                     SystemUtils.IS_OS_MAC_OSX_CHEETAH,
185                     SystemUtils.IS_OS_MAC_OSX_EL_CAPITAN,
186                     SystemUtils.IS_OS_MAC_OSX_HIGH_SIERRA,
187                     SystemUtils.IS_OS_MAC_OSX_JAGUAR,
188                     SystemUtils.IS_OS_MAC_OSX_LEOPARD,
189                     SystemUtils.IS_OS_MAC_OSX_LION,
190                     SystemUtils.IS_OS_MAC_OSX_MAVERICKS,
191                     SystemUtils.IS_OS_MAC_OSX_MOJAVE,
192                     SystemUtils.IS_OS_MAC_OSX_MONTEREY,
193                     SystemUtils.IS_OS_MAC_OSX_MOUNTAIN_LION,
194                     SystemUtils.IS_OS_MAC_OSX_PANTHER,
195                     SystemUtils.IS_OS_MAC_OSX_PUMA,
196                     SystemUtils.IS_OS_MAC_OSX_SEQUOIA,
197                     SystemUtils.IS_OS_MAC_OSX_SIERRA,
198                     SystemUtils.IS_OS_MAC_OSX_SNOW_LEOPARD,
199                     SystemUtils.IS_OS_MAC_OSX_SONOMA,
200                     SystemUtils.IS_OS_MAC_OSX_TIGER,
201                     SystemUtils.IS_OS_MAC_OSX_VENTURA,
202                     SystemUtils.IS_OS_MAC_OSX_YOSEMITE };
203             // @formatter:on
204             if (BooleanUtils.or(macOsValues)) {
205                 // If one is true, then only one should be true.
206                 assertTrue(BooleanUtils.xor(macOsValues));
207             }
208         } else if (osName.startsWith("OS/2")) {
209             assertTrue(SystemUtils.IS_OS_OS2);
210             assertFalse(SystemUtils.IS_OS_UNIX);
211             assertFalse(SystemUtils.IS_OS_ANDROID);
212             assertFalse(SystemUtils.IS_OS_WINDOWS);
213             assertFalse(SystemUtils.IS_OS_NETWARE);
214         } else if (osName.startsWith("SunOS")) {
215             assertTrue(SystemUtils.IS_OS_SUN_OS);
216             assertTrue(SystemUtils.IS_OS_UNIX);
217             assertFalse(SystemUtils.IS_OS_ANDROID);
218             assertFalse(SystemUtils.IS_OS_WINDOWS);
219             assertFalse(SystemUtils.IS_OS_NETWARE);
220         } else if (osName.startsWith("FreeBSD")) {
221             assertTrue(SystemUtils.IS_OS_FREE_BSD);
222             assertTrue(SystemUtils.IS_OS_UNIX);
223             assertFalse(SystemUtils.IS_OS_ANDROID);
224             assertFalse(SystemUtils.IS_OS_WINDOWS);
225             assertFalse(SystemUtils.IS_OS_NETWARE);
226         } else {
227             System.err.println("Can't test IS_OS_ value: " + osName);
228         }
229     }
230 
231     @Test
232     void test_IS_zOS() {
233         final String osName = System.getProperty("os.name");
234         if (osName == null) {
235             assertFalse(SystemUtils.IS_OS_ZOS);
236         } else if (osName.contains("z/OS")) {
237             assertFalse(SystemUtils.IS_OS_WINDOWS);
238             assertTrue(SystemUtils.IS_OS_ZOS);
239         }
240     }
241 
242     /**
243      * Assumes no security manager exists.
244      */
245     @Test
246     void test_USER_NAME() {
247         assertEquals(System.getProperty("user.name"), SystemUtils.USER_NAME);
248     }
249 
250     @Test
251     void testConstructor() {
252         assertNotNull(new SystemUtils());
253         final Constructor<?>[] cons = SystemUtils.class.getDeclaredConstructors();
254         assertEquals(1, cons.length);
255         assertTrue(Modifier.isPublic(cons[0].getModifiers()));
256         assertTrue(Modifier.isPublic(SystemUtils.class.getModifiers()));
257         assertFalse(Modifier.isFinal(SystemUtils.class.getModifiers()));
258     }
259 
260     @Test
261     void testGetEnvironmentVariableAbsent() {
262         final String name = "THIS_ENV_VAR_SHOULD_NOT_EXIST_FOR_THIS_TEST_TO_PASS";
263         final String expected = System.getenv(name);
264         assertNull(expected);
265         final String value = SystemUtils.getEnvironmentVariable(name, "DEFAULT");
266         assertEquals("DEFAULT", value);
267     }
268 
269     @Test
270     void testGetEnvironmentVariablePresent() {
271         final String name = "PATH";
272         final String expected = System.getenv(name);
273         final String value = SystemUtils.getEnvironmentVariable(name, null);
274         assertEquals(expected, value);
275     }
276 
277     @Test
278     void testGetHostName() {
279         final String hostName = SystemUtils.getHostName();
280         final String expected = SystemUtils.IS_OS_WINDOWS ? System.getenv("COMPUTERNAME") : System.getenv("HOSTNAME");
281         assertEquals(expected, hostName);
282     }
283 
284     /**
285      * Assumes no security manager exists.
286      */
287     @Test
288     void testGetJavaHome() {
289         final File dir = SystemUtils.getJavaHome();
290         assertNotNull(dir);
291         assertTrue(dir.exists());
292     }
293 
294     /**
295      * Assumes no security manager exists.
296      */
297     @Test
298     void testGetJavaHomePath() {
299         final Path dir = SystemUtils.getJavaHomePath();
300         assertNotNull(dir);
301         assertTrue(Files.exists(dir));
302     }
303 
304     /**
305      * Assumes no security manager exists.
306      */
307     @Test
308     void testGetJavaIoTmpDir() {
309         final File dir = SystemUtils.getJavaIoTmpDir();
310         assertNotNull(dir);
311         assertTrue(dir.exists());
312     }
313 
314     /**
315      * Assumes no security manager exists.
316      */
317     @Test
318     void testGetJavaIoTmpDirPath() {
319         final Path dir = SystemUtils.getJavaIoTmpDirPath();
320         assertNotNull(dir);
321         assertTrue(Files.exists(dir));
322     }
323 
324     /**
325      * Assumes no security manager exists.
326      */
327     @Test
328     void testGetUserDir() {
329         final File dir = SystemUtils.getUserDir();
330         assertNotNull(dir);
331         assertTrue(dir.exists());
332     }
333 
334     /**
335      * Assumes no security manager exists.
336      */
337     @Test
338     void testGetUserDirPath() {
339         final Path dir = SystemUtils.getUserDirPath();
340         assertNotNull(dir);
341         assertTrue(Files.exists(dir));
342     }
343 
344     /**
345      * Assumes no security manager exists.
346      */
347     @Test
348     void testGetUserHome() {
349         final File dir = SystemUtils.getUserHome();
350         assertNotNull(dir);
351         assertTrue(dir.exists());
352     }
353 
354     /**
355      * Assumes no security manager exists.
356      */
357     @Test
358     void testGetUserHomePath() {
359         final Path dir = SystemUtils.getUserHomePath();
360         assertNotNull(dir);
361         assertTrue(Files.exists(dir));
362     }
363 
364     /**
365      * Assumes no security manager exists.
366      */
367     @Test
368     void testGetUserName() {
369         assertEquals(System.getProperty("user.name"), SystemUtils.getUserName());
370         // Don't overwrite the system property in this test in case something goes awfully wrong.
371         assertEquals(System.getProperty("user.name", "foo"), SystemUtils.getUserName("foo"));
372     }
373 
374     @Test
375     void testIsJavaVersionAtLeast() {
376         if (SystemUtils.IS_JAVA_1_8) {
377             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_1));
378             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_2));
379             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_3));
380             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_4));
381             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_5));
382             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_6));
383             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_7));
384             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_8));
385             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_9));
386             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_10));
387             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_11));
388             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_12));
389             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_13));
390             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_14));
391             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_15));
392             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_16));
393             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_17));
394             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_18));
395             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_19));
396             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_20));
397             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_21));
398             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_22));
399             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_23));
400             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_24));
401             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_25));
402             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_26));
403         } else if (SystemUtils.IS_JAVA_9) {
404             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_1));
405             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_2));
406             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_3));
407             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_4));
408             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_5));
409             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_6));
410             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_7));
411             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_8));
412             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_9));
413             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_10));
414             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_11));
415             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_12));
416             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_13));
417             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_14));
418             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_15));
419             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_16));
420             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_17));
421             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_18));
422             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_19));
423             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_20));
424             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_21));
425             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_22));
426             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_23));
427             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_24));
428             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_25));
429             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_26));
430         } else if (SystemUtils.IS_JAVA_10) {
431             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_1));
432             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_2));
433             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_3));
434             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_4));
435             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_5));
436             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_6));
437             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_7));
438             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_8));
439             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_9));
440             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_10));
441             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_11));
442             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_12));
443             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_13));
444             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_14));
445             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_15));
446             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_16));
447             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_17));
448             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_18));
449             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_19));
450             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_20));
451             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_21));
452             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_22));
453             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_23));
454             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_24));
455             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_25));
456             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_26));
457         } else if (SystemUtils.IS_JAVA_11) {
458             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_1));
459             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_2));
460             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_3));
461             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_4));
462             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_5));
463             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_6));
464             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_7));
465             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_8));
466             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_9));
467             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_10));
468             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_11));
469             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_12));
470             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_13));
471             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_14));
472             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_15));
473             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_16));
474             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_17));
475             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_18));
476             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_19));
477             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_20));
478             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_21));
479             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_22));
480             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_23));
481             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_24));
482             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_25));
483             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_26));
484         } else if (SystemUtils.IS_JAVA_12) {
485             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_1));
486             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_2));
487             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_3));
488             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_4));
489             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_5));
490             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_6));
491             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_7));
492             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_8));
493             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_9));
494             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_10));
495             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_11));
496             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_12));
497             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_13));
498             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_14));
499             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_15));
500             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_16));
501             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_17));
502             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_18));
503             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_19));
504             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_20));
505             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_21));
506             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_22));
507             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_23));
508             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_24));
509             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_25));
510             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_26));
511         } else if (SystemUtils.IS_JAVA_13) {
512             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_1));
513             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_2));
514             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_3));
515             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_4));
516             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_5));
517             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_6));
518             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_7));
519             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_8));
520             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_9));
521             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_10));
522             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_11));
523             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_12));
524             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_13));
525             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_14));
526             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_15));
527             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_16));
528             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_17));
529             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_18));
530             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_19));
531             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_20));
532             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_21));
533             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_22));
534             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_23));
535             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_24));
536             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_25));
537             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_26));
538         } else if (SystemUtils.IS_JAVA_14) {
539             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_1));
540             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_2));
541             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_3));
542             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_4));
543             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_5));
544             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_6));
545             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_7));
546             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_8));
547             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_9));
548             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_10));
549             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_11));
550             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_12));
551             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_13));
552             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_14));
553             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_15));
554             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_16));
555             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_17));
556             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_18));
557             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_19));
558             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_20));
559             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_21));
560             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_22));
561             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_23));
562             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_24));
563             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_25));
564             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_26));
565         } else if (SystemUtils.IS_JAVA_15) {
566             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_1));
567             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_2));
568             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_3));
569             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_4));
570             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_5));
571             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_6));
572             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_7));
573             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_8));
574             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_9));
575             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_10));
576             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_11));
577             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_12));
578             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_13));
579             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_14));
580             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_15));
581             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_16));
582             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_17));
583             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_18));
584             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_19));
585             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_20));
586             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_21));
587             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_22));
588             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_23));
589             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_24));
590             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_25));
591             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_26));
592         } else if (SystemUtils.IS_JAVA_16) {
593             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_1));
594             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_2));
595             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_3));
596             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_4));
597             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_5));
598             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_6));
599             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_7));
600             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_8));
601             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_9));
602             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_10));
603             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_11));
604             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_12));
605             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_13));
606             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_14));
607             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_15));
608             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_16));
609             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_17));
610             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_18));
611             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_19));
612             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_20));
613             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_21));
614             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_22));
615             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_23));
616             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_24));
617             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_25));
618             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_26));
619         } else if (SystemUtils.IS_JAVA_17) {
620             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_1));
621             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_2));
622             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_3));
623             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_4));
624             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_5));
625             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_6));
626             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_7));
627             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_8));
628             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_9));
629             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_10));
630             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_11));
631             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_12));
632             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_13));
633             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_14));
634             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_15));
635             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_16));
636             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_17));
637             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_18));
638             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_19));
639             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_20));
640             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_21));
641             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_22));
642             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_23));
643             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_24));
644             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_25));
645             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_26));
646         } else if (SystemUtils.IS_JAVA_18) {
647             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_1));
648             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_2));
649             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_3));
650             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_4));
651             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_5));
652             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_6));
653             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_7));
654             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_8));
655             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_9));
656             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_10));
657             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_11));
658             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_12));
659             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_13));
660             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_14));
661             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_15));
662             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_16));
663             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_17));
664             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_18));
665             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_19));
666             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_20));
667             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_21));
668             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_22));
669             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_23));
670             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_24));
671             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_25));
672             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_26));
673         } else if (SystemUtils.IS_JAVA_19) {
674             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_1));
675             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_2));
676             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_3));
677             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_4));
678             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_5));
679             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_6));
680             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_7));
681             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_8));
682             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_9));
683             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_10));
684             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_11));
685             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_12));
686             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_13));
687             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_14));
688             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_15));
689             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_16));
690             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_17));
691             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_18));
692             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_19));
693             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_20));
694             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_21));
695             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_22));
696             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_23));
697             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_24));
698             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_25));
699             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_26));
700         } else if (SystemUtils.IS_JAVA_20) {
701             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_1));
702             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_2));
703             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_3));
704             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_4));
705             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_5));
706             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_6));
707             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_7));
708             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_8));
709             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_9));
710             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_10));
711             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_11));
712             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_12));
713             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_13));
714             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_14));
715             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_15));
716             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_16));
717             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_17));
718             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_18));
719             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_19));
720             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_20));
721             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_21));
722             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_22));
723             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_23));
724             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_24));
725             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_25));
726             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_26));
727         } else if (SystemUtils.IS_JAVA_21) {
728             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_1));
729             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_2));
730             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_3));
731             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_4));
732             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_5));
733             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_6));
734             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_7));
735             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_8));
736             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_9));
737             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_10));
738             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_11));
739             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_12));
740             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_13));
741             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_14));
742             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_15));
743             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_16));
744             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_17));
745             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_18));
746             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_19));
747             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_20));
748             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_21));
749             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_22));
750             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_23));
751             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_24));
752             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_25));
753             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_26));
754         } else if (SystemUtils.IS_JAVA_22) {
755             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_1));
756             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_2));
757             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_3));
758             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_4));
759             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_5));
760             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_6));
761             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_7));
762             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_8));
763             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_9));
764             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_10));
765             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_11));
766             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_12));
767             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_13));
768             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_14));
769             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_15));
770             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_16));
771             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_17));
772             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_18));
773             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_19));
774             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_20));
775             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_21));
776             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_22));
777             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_23));
778             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_24));
779             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_25));
780             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_26));
781         } else if (SystemUtils.IS_JAVA_23) {
782             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_1));
783             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_2));
784             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_3));
785             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_4));
786             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_5));
787             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_6));
788             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_7));
789             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_8));
790             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_9));
791             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_10));
792             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_11));
793             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_12));
794             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_13));
795             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_14));
796             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_15));
797             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_16));
798             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_17));
799             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_18));
800             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_19));
801             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_20));
802             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_21));
803             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_22));
804             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_23));
805             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_24));
806             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_25));
807             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_26));
808         } else if (SystemUtils.IS_JAVA_24) {
809             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_1));
810             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_2));
811             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_3));
812             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_4));
813             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_5));
814             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_6));
815             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_7));
816             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_8));
817             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_9));
818             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_10));
819             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_11));
820             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_12));
821             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_13));
822             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_14));
823             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_15));
824             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_16));
825             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_17));
826             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_18));
827             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_19));
828             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_20));
829             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_21));
830             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_22));
831             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_23));
832             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_24));
833             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_25));
834             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_26));
835         } else if (SystemUtils.IS_JAVA_25) {
836             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_1));
837             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_2));
838             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_3));
839             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_4));
840             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_5));
841             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_6));
842             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_7));
843             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_8));
844             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_9));
845             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_10));
846             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_11));
847             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_12));
848             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_13));
849             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_14));
850             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_15));
851             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_16));
852             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_17));
853             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_18));
854             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_19));
855             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_20));
856             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_21));
857             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_22));
858             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_23));
859             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_24));
860             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_25));
861             assertFalse(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_26));
862         } else if (SystemUtils.IS_JAVA_26) {
863             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_1));
864             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_2));
865             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_3));
866             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_4));
867             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_5));
868             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_6));
869             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_7));
870             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_1_8));
871             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_9));
872             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_10));
873             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_11));
874             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_12));
875             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_13));
876             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_14));
877             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_15));
878             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_16));
879             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_17));
880             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_18));
881             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_19));
882             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_20));
883             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_21));
884             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_22));
885             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_23));
886             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_24));
887             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_25));
888             assertTrue(SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_26));
889         }
890     }
891 
892     @Test
893     void testIsJavaVersionAtMost() {
894         if (SystemUtils.IS_JAVA_1_8) {
895             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_1));
896             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_2));
897             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_3));
898             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_4));
899             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_5));
900             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_6));
901             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_7));
902             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_8));
903             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_9));
904             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_10));
905             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_11));
906             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_12));
907             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_13));
908             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_14));
909             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_15));
910             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_16));
911             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_17));
912             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_18));
913             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_19));
914             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_20));
915             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_21));
916             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_22));
917             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_23));
918             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_24));
919             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_25));
920             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_26));
921         } else if (SystemUtils.IS_JAVA_9) {
922             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_1));
923             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_2));
924             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_3));
925             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_4));
926             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_5));
927             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_6));
928             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_7));
929             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_8));
930             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_9));
931             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_10));
932             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_11));
933             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_12));
934             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_13));
935             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_14));
936             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_15));
937             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_16));
938             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_17));
939             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_18));
940             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_19));
941             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_20));
942             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_21));
943             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_22));
944             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_23));
945             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_24));
946             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_25));
947             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_26));
948         } else if (SystemUtils.IS_JAVA_10) {
949             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_1));
950             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_2));
951             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_3));
952             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_4));
953             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_5));
954             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_6));
955             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_7));
956             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_8));
957             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_9));
958             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_10));
959             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_11));
960             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_12));
961             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_13));
962             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_14));
963             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_15));
964             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_16));
965             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_17));
966             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_18));
967             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_19));
968             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_20));
969             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_21));
970             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_22));
971             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_23));
972             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_24));
973             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_25));
974             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_26));
975         } else if (SystemUtils.IS_JAVA_11) {
976             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_1));
977             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_2));
978             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_3));
979             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_4));
980             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_5));
981             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_6));
982             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_7));
983             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_8));
984             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_9));
985             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_10));
986             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_11));
987             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_12));
988             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_13));
989             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_14));
990             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_15));
991             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_16));
992             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_17));
993             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_18));
994             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_19));
995             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_20));
996             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_21));
997             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_22));
998             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_23));
999             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_24));
1000             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_25));
1001             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_26));
1002         } else if (SystemUtils.IS_JAVA_12) {
1003             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_1));
1004             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_2));
1005             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_3));
1006             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_4));
1007             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_5));
1008             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_6));
1009             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_7));
1010             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_8));
1011             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_9));
1012             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_10));
1013             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_11));
1014             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_12));
1015             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_13));
1016             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_14));
1017             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_15));
1018             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_16));
1019             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_17));
1020             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_18));
1021             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_19));
1022             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_20));
1023             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_21));
1024             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_22));
1025             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_23));
1026             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_24));
1027             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_25));
1028             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_26));
1029         } else if (SystemUtils.IS_JAVA_13) {
1030             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_1));
1031             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_2));
1032             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_3));
1033             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_4));
1034             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_5));
1035             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_6));
1036             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_7));
1037             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_8));
1038             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_9));
1039             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_10));
1040             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_11));
1041             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_12));
1042             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_13));
1043             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_14));
1044             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_15));
1045             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_16));
1046             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_17));
1047             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_18));
1048             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_19));
1049             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_20));
1050             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_21));
1051             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_22));
1052             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_23));
1053             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_24));
1054             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_25));
1055             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_26));
1056         } else if (SystemUtils.IS_JAVA_14) {
1057             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_1));
1058             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_2));
1059             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_3));
1060             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_4));
1061             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_5));
1062             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_6));
1063             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_7));
1064             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_8));
1065             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_9));
1066             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_10));
1067             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_11));
1068             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_12));
1069             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_13));
1070             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_14));
1071             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_15));
1072             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_16));
1073             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_17));
1074             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_18));
1075             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_19));
1076             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_20));
1077             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_21));
1078             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_22));
1079             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_23));
1080             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_24));
1081             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_25));
1082             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_26));
1083         } else if (SystemUtils.IS_JAVA_15) {
1084             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_1));
1085             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_2));
1086             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_3));
1087             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_4));
1088             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_5));
1089             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_6));
1090             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_7));
1091             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_8));
1092             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_9));
1093             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_10));
1094             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_11));
1095             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_12));
1096             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_13));
1097             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_14));
1098             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_15));
1099             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_16));
1100             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_17));
1101             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_18));
1102             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_19));
1103             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_20));
1104             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_21));
1105             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_22));
1106             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_23));
1107             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_24));
1108             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_25));
1109             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_26));
1110         } else if (SystemUtils.IS_JAVA_16) {
1111             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_1));
1112             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_2));
1113             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_3));
1114             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_4));
1115             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_5));
1116             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_6));
1117             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_7));
1118             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_8));
1119             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_9));
1120             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_10));
1121             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_11));
1122             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_12));
1123             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_13));
1124             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_14));
1125             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_15));
1126             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_16));
1127             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_17));
1128             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_18));
1129             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_19));
1130             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_20));
1131             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_21));
1132             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_22));
1133             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_23));
1134             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_24));
1135             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_25));
1136             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_26));
1137         } else if (SystemUtils.IS_JAVA_17) {
1138             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_1));
1139             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_2));
1140             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_3));
1141             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_4));
1142             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_5));
1143             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_6));
1144             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_7));
1145             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_8));
1146             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_9));
1147             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_10));
1148             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_11));
1149             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_12));
1150             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_13));
1151             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_14));
1152             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_15));
1153             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_16));
1154             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_17));
1155             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_18));
1156             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_19));
1157             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_20));
1158             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_21));
1159             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_22));
1160             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_23));
1161             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_24));
1162             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_25));
1163             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_26));
1164         } else if (SystemUtils.IS_JAVA_18) {
1165             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_1));
1166             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_2));
1167             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_3));
1168             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_4));
1169             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_5));
1170             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_6));
1171             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_7));
1172             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_8));
1173             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_9));
1174             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_10));
1175             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_11));
1176             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_12));
1177             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_13));
1178             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_14));
1179             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_15));
1180             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_16));
1181             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_17));
1182             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_18));
1183             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_19));
1184             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_20));
1185             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_21));
1186             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_22));
1187             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_23));
1188             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_24));
1189             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_25));
1190             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_26));
1191         } else if (SystemUtils.IS_JAVA_19) {
1192             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_1));
1193             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_2));
1194             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_3));
1195             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_4));
1196             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_5));
1197             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_6));
1198             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_7));
1199             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_8));
1200             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_9));
1201             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_10));
1202             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_11));
1203             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_12));
1204             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_13));
1205             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_14));
1206             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_15));
1207             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_16));
1208             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_17));
1209             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_18));
1210             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_19));
1211             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_20));
1212             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_21));
1213             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_22));
1214             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_23));
1215             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_24));
1216             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_25));
1217             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_26));
1218         } else if (SystemUtils.IS_JAVA_20) {
1219             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_1));
1220             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_2));
1221             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_3));
1222             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_4));
1223             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_5));
1224             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_6));
1225             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_7));
1226             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_8));
1227             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_9));
1228             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_10));
1229             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_11));
1230             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_12));
1231             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_13));
1232             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_14));
1233             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_15));
1234             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_16));
1235             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_17));
1236             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_18));
1237             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_19));
1238             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_20));
1239             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_21));
1240             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_22));
1241             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_23));
1242             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_24));
1243             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_25));
1244             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_26));
1245         } else if (SystemUtils.IS_JAVA_21) {
1246             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_1));
1247             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_2));
1248             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_3));
1249             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_4));
1250             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_5));
1251             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_6));
1252             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_7));
1253             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_8));
1254             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_9));
1255             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_10));
1256             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_11));
1257             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_12));
1258             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_13));
1259             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_14));
1260             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_15));
1261             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_16));
1262             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_17));
1263             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_18));
1264             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_19));
1265             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_20));
1266             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_21));
1267             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_22));
1268             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_23));
1269             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_24));
1270             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_25));
1271             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_26));
1272         } else if (SystemUtils.IS_JAVA_22) {
1273             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_1));
1274             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_2));
1275             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_3));
1276             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_4));
1277             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_5));
1278             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_6));
1279             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_7));
1280             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_8));
1281             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_9));
1282             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_10));
1283             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_11));
1284             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_12));
1285             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_13));
1286             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_14));
1287             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_15));
1288             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_16));
1289             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_17));
1290             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_18));
1291             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_19));
1292             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_20));
1293             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_21));
1294             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_22));
1295             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_23));
1296             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_24));
1297             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_25));
1298             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_26));
1299         } else if (SystemUtils.IS_JAVA_23) {
1300             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_1));
1301             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_2));
1302             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_3));
1303             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_4));
1304             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_5));
1305             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_6));
1306             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_7));
1307             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_8));
1308             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_9));
1309             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_10));
1310             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_11));
1311             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_12));
1312             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_13));
1313             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_14));
1314             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_15));
1315             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_16));
1316             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_17));
1317             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_18));
1318             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_19));
1319             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_20));
1320             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_21));
1321             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_22));
1322             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_23));
1323             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_24));
1324             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_25));
1325             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_26));
1326         } else if (SystemUtils.IS_JAVA_24) {
1327             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_1));
1328             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_2));
1329             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_3));
1330             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_4));
1331             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_5));
1332             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_6));
1333             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_7));
1334             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_8));
1335             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_9));
1336             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_10));
1337             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_11));
1338             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_12));
1339             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_13));
1340             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_14));
1341             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_15));
1342             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_16));
1343             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_17));
1344             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_18));
1345             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_19));
1346             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_20));
1347             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_21));
1348             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_22));
1349             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_23));
1350             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_24));
1351             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_25));
1352             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_26));
1353         } else if (SystemUtils.IS_JAVA_25) {
1354             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_1));
1355             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_2));
1356             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_3));
1357             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_4));
1358             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_5));
1359             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_6));
1360             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_7));
1361             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_8));
1362             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_9));
1363             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_10));
1364             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_11));
1365             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_12));
1366             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_13));
1367             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_14));
1368             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_15));
1369             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_16));
1370             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_17));
1371             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_18));
1372             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_19));
1373             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_20));
1374             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_21));
1375             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_22));
1376             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_23));
1377             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_24));
1378             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_25));
1379             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_26));
1380         } else if (SystemUtils.IS_JAVA_26) {
1381             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_1));
1382             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_2));
1383             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_3));
1384             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_4));
1385             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_5));
1386             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_6));
1387             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_7));
1388             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_1_8));
1389             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_9));
1390             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_10));
1391             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_11));
1392             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_12));
1393             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_13));
1394             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_14));
1395             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_15));
1396             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_16));
1397             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_17));
1398             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_18));
1399             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_19));
1400             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_20));
1401             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_21));
1402             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_22));
1403             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_23));
1404             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_24));
1405             assertFalse(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_25));
1406             assertTrue(SystemUtils.isJavaVersionAtMost(JavaVersion.JAVA_26));
1407         }
1408     }
1409 
1410     @Test
1411     void testJavaAwtHeadless() {
1412         final String expectedStringValue = System.getProperty("java.awt.headless");
1413         final String expectedStringValueWithDefault = System.getProperty("java.awt.headless", "false");
1414         assertNotNull(expectedStringValueWithDefault);
1415         final boolean expectedValue = Boolean.parseBoolean(expectedStringValue);
1416         if (expectedStringValue != null) {
1417             assertEquals(expectedStringValue, SystemUtils.JAVA_AWT_HEADLESS);
1418         }
1419         assertEquals(expectedValue, SystemUtils.isJavaAwtHeadless());
1420         assertEquals(expectedStringValueWithDefault, "" + SystemUtils.isJavaAwtHeadless());
1421     }
1422 
1423     @Test
1424     void testJavaVersionMatches() {
1425         String javaVersion = null;
1426         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.0"));
1427         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.1"));
1428         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.2"));
1429         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.3"));
1430         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.4"));
1431         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.5"));
1432         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.6"));
1433         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.7"));
1434         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.8"));
1435         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "9"));
1436         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "10"));
1437         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "11"));
1438         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "12"));
1439         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "13"));
1440         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "14"));
1441         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "15"));
1442         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "16"));
1443         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "17"));
1444         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "18"));
1445         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "19"));
1446         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "20"));
1447         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "21"));
1448         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "22"));
1449         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "23"));
1450         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "24"));
1451         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "25"));
1452         javaVersion = "";
1453         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.0"));
1454         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.1"));
1455         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.2"));
1456         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.3"));
1457         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.4"));
1458         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.5"));
1459         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.6"));
1460         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.7"));
1461         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.8"));
1462         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "9"));
1463         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "10"));
1464         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "11"));
1465         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "12"));
1466         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "13"));
1467         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "14"));
1468         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "15"));
1469         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "16"));
1470         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "17"));
1471         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "18"));
1472         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "19"));
1473         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "20"));
1474         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "21"));
1475         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "22"));
1476         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "23"));
1477         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "24"));
1478         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "25"));
1479         javaVersion = "1.0";
1480         assertTrue(SystemUtils.isJavaVersionMatch(javaVersion, "1.0"));
1481         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.1"));
1482         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.2"));
1483         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.3"));
1484         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.4"));
1485         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.5"));
1486         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.6"));
1487         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.7"));
1488         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.8"));
1489         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "9"));
1490         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "10"));
1491         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "11"));
1492         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "12"));
1493         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "13"));
1494         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "14"));
1495         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "15"));
1496         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "16"));
1497         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "17"));
1498         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "18"));
1499         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "19"));
1500         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "20"));
1501         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "21"));
1502         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "22"));
1503         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "23"));
1504         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "24"));
1505         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "25"));
1506         javaVersion = "1.1";
1507         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.0"));
1508         assertTrue(SystemUtils.isJavaVersionMatch(javaVersion, "1.1"));
1509         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.2"));
1510         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.3"));
1511         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.4"));
1512         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.5"));
1513         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.6"));
1514         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.7"));
1515         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.8"));
1516         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "9"));
1517         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "10"));
1518         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "11"));
1519         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "12"));
1520         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "13"));
1521         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "14"));
1522         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "15"));
1523         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "16"));
1524         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "17"));
1525         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "18"));
1526         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "19"));
1527         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "20"));
1528         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "21"));
1529         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "22"));
1530         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "23"));
1531         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "24"));
1532         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "25"));
1533         javaVersion = "1.2";
1534         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.0"));
1535         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.1"));
1536         assertTrue(SystemUtils.isJavaVersionMatch(javaVersion, "1.2"));
1537         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.3"));
1538         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.4"));
1539         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.5"));
1540         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.6"));
1541         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.7"));
1542         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.8"));
1543         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "9"));
1544         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "10"));
1545         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "11"));
1546         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "12"));
1547         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "13"));
1548         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "14"));
1549         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "15"));
1550         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "16"));
1551         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "17"));
1552         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "18"));
1553         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "19"));
1554         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "20"));
1555         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "21"));
1556         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "22"));
1557         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "23"));
1558         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "24"));
1559         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "25"));
1560         javaVersion = "1.3.0";
1561         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.0"));
1562         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.1"));
1563         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.2"));
1564         assertTrue(SystemUtils.isJavaVersionMatch(javaVersion, "1.3"));
1565         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.4"));
1566         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.5"));
1567         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.6"));
1568         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.7"));
1569         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.8"));
1570         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "9"));
1571         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "10"));
1572         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "11"));
1573         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "12"));
1574         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "13"));
1575         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "14"));
1576         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "15"));
1577         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "16"));
1578         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "17"));
1579         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "18"));
1580         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "19"));
1581         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "20"));
1582         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "21"));
1583         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "22"));
1584         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "23"));
1585         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "24"));
1586         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "25"));
1587         javaVersion = "1.3.1";
1588         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.0"));
1589         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.1"));
1590         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.2"));
1591         assertTrue(SystemUtils.isJavaVersionMatch(javaVersion, "1.3"));
1592         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.4"));
1593         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.5"));
1594         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.6"));
1595         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.7"));
1596         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.8"));
1597         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "9"));
1598         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "10"));
1599         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "11"));
1600         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "12"));
1601         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "13"));
1602         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "14"));
1603         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "15"));
1604         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "16"));
1605         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "17"));
1606         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "18"));
1607         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "19"));
1608         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "20"));
1609         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "21"));
1610         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "22"));
1611         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "23"));
1612         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "24"));
1613         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "25"));
1614         javaVersion = "1.4.0";
1615         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.0"));
1616         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.1"));
1617         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.2"));
1618         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.3"));
1619         assertTrue(SystemUtils.isJavaVersionMatch(javaVersion, "1.4"));
1620         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.5"));
1621         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.6"));
1622         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.7"));
1623         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.8"));
1624         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "9"));
1625         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "10"));
1626         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "11"));
1627         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "12"));
1628         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "13"));
1629         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "14"));
1630         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "15"));
1631         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "16"));
1632         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "17"));
1633         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "18"));
1634         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "19"));
1635         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "20"));
1636         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "21"));
1637         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "22"));
1638         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "23"));
1639         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "24"));
1640         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "25"));
1641         javaVersion = "1.4.1";
1642         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.0"));
1643         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.1"));
1644         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.2"));
1645         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.3"));
1646         assertTrue(SystemUtils.isJavaVersionMatch(javaVersion, "1.4"));
1647         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.5"));
1648         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.6"));
1649         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.7"));
1650         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.8"));
1651         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "9"));
1652         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "10"));
1653         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "11"));
1654         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "12"));
1655         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "13"));
1656         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "14"));
1657         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "15"));
1658         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "16"));
1659         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "17"));
1660         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "18"));
1661         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "19"));
1662         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "20"));
1663         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "21"));
1664         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "22"));
1665         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "23"));
1666         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "24"));
1667         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "25"));
1668         javaVersion = "1.4.2";
1669         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.0"));
1670         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.1"));
1671         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.2"));
1672         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.3"));
1673         assertTrue(SystemUtils.isJavaVersionMatch(javaVersion, "1.4"));
1674         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.5"));
1675         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.6"));
1676         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.7"));
1677         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.8"));
1678         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "9"));
1679         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "10"));
1680         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "11"));
1681         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "12"));
1682         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "13"));
1683         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "14"));
1684         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "15"));
1685         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "16"));
1686         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "17"));
1687         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "18"));
1688         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "19"));
1689         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "20"));
1690         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "21"));
1691         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "22"));
1692         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "23"));
1693         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "24"));
1694         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "25"));
1695         javaVersion = "1.5.0";
1696         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.0"));
1697         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.1"));
1698         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.2"));
1699         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.3"));
1700         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.4"));
1701         assertTrue(SystemUtils.isJavaVersionMatch(javaVersion, "1.5"));
1702         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.6"));
1703         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.7"));
1704         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.8"));
1705         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "9"));
1706         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "10"));
1707         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "11"));
1708         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "12"));
1709         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "13"));
1710         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "14"));
1711         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "15"));
1712         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "16"));
1713         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "17"));
1714         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "18"));
1715         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "19"));
1716         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "20"));
1717         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "21"));
1718         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "22"));
1719         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "23"));
1720         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "24"));
1721         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "25"));
1722         javaVersion = "1.6.0";
1723         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.0"));
1724         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.1"));
1725         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.2"));
1726         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.3"));
1727         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.4"));
1728         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.5"));
1729         assertTrue(SystemUtils.isJavaVersionMatch(javaVersion, "1.6"));
1730         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.7"));
1731         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.8"));
1732         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "9"));
1733         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "10"));
1734         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "11"));
1735         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "12"));
1736         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "13"));
1737         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "14"));
1738         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "15"));
1739         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "16"));
1740         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "17"));
1741         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "18"));
1742         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "19"));
1743         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "20"));
1744         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "21"));
1745         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "22"));
1746         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "23"));
1747         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "24"));
1748         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "25"));
1749         javaVersion = "1.7.0";
1750         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.0"));
1751         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.1"));
1752         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.2"));
1753         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.3"));
1754         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.4"));
1755         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.5"));
1756         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.6"));
1757         assertTrue(SystemUtils.isJavaVersionMatch(javaVersion, "1.7"));
1758         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.8"));
1759         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "9"));
1760         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "10"));
1761         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "11"));
1762         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "12"));
1763         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "13"));
1764         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "14"));
1765         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "15"));
1766         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "16"));
1767         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "17"));
1768         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "18"));
1769         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "19"));
1770         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "20"));
1771         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "21"));
1772         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "22"));
1773         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "23"));
1774         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "24"));
1775         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "25"));
1776         javaVersion = "1.8.0";
1777         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.0"));
1778         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.1"));
1779         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.2"));
1780         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.3"));
1781         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.4"));
1782         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.5"));
1783         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.6"));
1784         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.7"));
1785         assertTrue(SystemUtils.isJavaVersionMatch(javaVersion, "1.8"));
1786         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "9"));
1787         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "10"));
1788         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "11"));
1789         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "12"));
1790         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "13"));
1791         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "14"));
1792         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "15"));
1793         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "16"));
1794         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "17"));
1795         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "18"));
1796         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "19"));
1797         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "20"));
1798         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "21"));
1799         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "22"));
1800         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "23"));
1801         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "24"));
1802         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "25"));
1803         javaVersion = "9";
1804         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.0"));
1805         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.1"));
1806         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.2"));
1807         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.3"));
1808         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.4"));
1809         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.5"));
1810         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.6"));
1811         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.7"));
1812         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.8"));
1813         assertTrue(SystemUtils.isJavaVersionMatch(javaVersion, "9"));
1814         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "10"));
1815         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "11"));
1816         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "12"));
1817         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "13"));
1818         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "14"));
1819         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "15"));
1820         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "16"));
1821         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "17"));
1822         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "18"));
1823         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "19"));
1824         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "20"));
1825         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "21"));
1826         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "22"));
1827         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "23"));
1828         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "24"));
1829         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "25"));
1830         javaVersion = "10";
1831         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.0"));
1832         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.1"));
1833         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.2"));
1834         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.3"));
1835         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.4"));
1836         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.5"));
1837         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.6"));
1838         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.7"));
1839         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.8"));
1840         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "9"));
1841         assertTrue(SystemUtils.isJavaVersionMatch(javaVersion, "10"));
1842         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "11"));
1843         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "12"));
1844         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "13"));
1845         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "14"));
1846         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "15"));
1847         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "16"));
1848         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "17"));
1849         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "18"));
1850         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "19"));
1851         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "20"));
1852         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "21"));
1853         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "22"));
1854         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "23"));
1855         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "24"));
1856         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "25"));
1857         javaVersion = "11"; // LTS
1858         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.0"));
1859         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.1"));
1860         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.2"));
1861         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.3"));
1862         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.4"));
1863         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.5"));
1864         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.6"));
1865         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.7"));
1866         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.8"));
1867         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "9"));
1868         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "10"));
1869         assertTrue(SystemUtils.isJavaVersionMatch(javaVersion, "11"));
1870         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "12"));
1871         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "13"));
1872         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "14"));
1873         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "15"));
1874         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "16"));
1875         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "17"));
1876         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "18"));
1877         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "19"));
1878         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "20"));
1879         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "21"));
1880         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "22"));
1881         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "23"));
1882         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "24"));
1883         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "25"));
1884         javaVersion = "17"; // LTS
1885         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.0"));
1886         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.1"));
1887         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.2"));
1888         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.3"));
1889         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.4"));
1890         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.5"));
1891         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.6"));
1892         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.7"));
1893         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.8"));
1894         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "9"));
1895         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "10"));
1896         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "11"));
1897         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "12"));
1898         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "13"));
1899         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "14"));
1900         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "15"));
1901         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "16"));
1902         assertTrue(SystemUtils.isJavaVersionMatch(javaVersion, "17"));
1903         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "18"));
1904         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "19"));
1905         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "20"));
1906         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "21"));
1907         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "22"));
1908         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "23"));
1909         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "24"));
1910         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "25"));
1911         javaVersion = "21"; // LTS
1912         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.0"));
1913         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.1"));
1914         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.2"));
1915         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.3"));
1916         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.4"));
1917         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.5"));
1918         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.6"));
1919         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.7"));
1920         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.8"));
1921         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "9"));
1922         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "10"));
1923         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "11"));
1924         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "12"));
1925         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "13"));
1926         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "14"));
1927         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "15"));
1928         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "16"));
1929         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "17"));
1930         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "18"));
1931         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "19"));
1932         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "20"));
1933         assertTrue(SystemUtils.isJavaVersionMatch(javaVersion, "21"));
1934         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "22"));
1935         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "23"));
1936         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "24"));
1937         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "25"));
1938         javaVersion = "22";
1939         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.0"));
1940         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.1"));
1941         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.2"));
1942         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.3"));
1943         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.4"));
1944         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.5"));
1945         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.6"));
1946         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.7"));
1947         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.8"));
1948         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "9"));
1949         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "10"));
1950         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "11"));
1951         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "12"));
1952         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "13"));
1953         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "14"));
1954         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "15"));
1955         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "16"));
1956         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "17"));
1957         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "18"));
1958         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "19"));
1959         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "20"));
1960         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "21"));
1961         assertTrue(SystemUtils.isJavaVersionMatch(javaVersion, "22"));
1962         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "23"));
1963         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "24"));
1964         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "25"));
1965         javaVersion = "23";
1966         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.0"));
1967         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.1"));
1968         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.2"));
1969         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.3"));
1970         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.4"));
1971         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.5"));
1972         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.6"));
1973         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.7"));
1974         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.8"));
1975         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "9"));
1976         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "10"));
1977         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "11"));
1978         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "12"));
1979         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "13"));
1980         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "14"));
1981         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "15"));
1982         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "16"));
1983         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "17"));
1984         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "18"));
1985         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "19"));
1986         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "20"));
1987         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "21"));
1988         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "22"));
1989         assertTrue(SystemUtils.isJavaVersionMatch(javaVersion, "23"));
1990         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "24"));
1991         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "25"));
1992         javaVersion = "24";
1993         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.0"));
1994         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.1"));
1995         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.2"));
1996         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.3"));
1997         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.4"));
1998         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.5"));
1999         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.6"));
2000         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.7"));
2001         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.8"));
2002         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "9"));
2003         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "10"));
2004         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "11"));
2005         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "12"));
2006         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "13"));
2007         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "14"));
2008         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "15"));
2009         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "16"));
2010         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "17"));
2011         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "18"));
2012         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "19"));
2013         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "20"));
2014         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "21"));
2015         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "22"));
2016         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "23"));
2017         assertTrue(SystemUtils.isJavaVersionMatch(javaVersion, "24"));
2018         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "25"));
2019         javaVersion = "25";
2020         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.0"));
2021         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.1"));
2022         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.2"));
2023         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.3"));
2024         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.4"));
2025         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.5"));
2026         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.6"));
2027         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.7"));
2028         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.8"));
2029         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "9"));
2030         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "10"));
2031         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "11"));
2032         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "12"));
2033         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "13"));
2034         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "14"));
2035         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "15"));
2036         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "16"));
2037         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "17"));
2038         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "18"));
2039         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "19"));
2040         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "20"));
2041         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "21"));
2042         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "22"));
2043         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "23"));
2044         assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "24"));
2045         assertTrue(SystemUtils.isJavaVersionMatch(javaVersion, "25"));
2046     }
2047 
2048     @Test
2049     void testOSMatchesName() {
2050         String osName = null;
2051         assertFalse(SystemUtils.isOsNameMatch(osName, "Windows"));
2052         osName = "";
2053         assertFalse(SystemUtils.isOsNameMatch(osName, "Windows"));
2054         osName = "Windows 95";
2055         assertTrue(SystemUtils.isOsNameMatch(osName, "Windows"));
2056         osName = "Windows NT";
2057         assertTrue(SystemUtils.isOsNameMatch(osName, "Windows"));
2058         osName = "OS/2";
2059         assertFalse(SystemUtils.isOsNameMatch(osName, "Windows"));
2060     }
2061 
2062     @Test
2063     void testOSMatchesNameAndVersion() {
2064         String osName = null;
2065         String osVersion = null;
2066         assertFalse(SystemUtils.isOsMatch(osName, osVersion, "Windows 9", "4.1"));
2067         osName = "";
2068         osVersion = "";
2069         assertFalse(SystemUtils.isOsMatch(osName, osVersion, "Windows 9", "4.1"));
2070         osName = "Windows 95";
2071         osVersion = "4.0";
2072         assertFalse(SystemUtils.isOsMatch(osName, osVersion, "Windows 9", "4.1"));
2073         osName = "Windows 95";
2074         osVersion = "4.1";
2075         assertTrue(SystemUtils.isOsMatch(osName, osVersion, "Windows 9", "4.1"));
2076         osName = "Windows 98";
2077         osVersion = "4.1";
2078         assertTrue(SystemUtils.isOsMatch(osName, osVersion, "Windows 9", "4.1"));
2079         osName = "Windows NT";
2080         osVersion = "4.0";
2081         assertFalse(SystemUtils.isOsMatch(osName, osVersion, "Windows 9", "4.1"));
2082         osName = "OS/2";
2083         osVersion = "4.0";
2084         assertFalse(SystemUtils.isOsMatch(osName, osVersion, "Windows 9", "4.1"));
2085     }
2086 
2087     @Test
2088     void testOsVersionMatches() {
2089         String osVersion = null;
2090         assertFalse(SystemUtils.isOsVersionMatch(osVersion, "10.1"));
2091         osVersion = "";
2092         assertFalse(SystemUtils.isOsVersionMatch(osVersion, "10.1"));
2093         osVersion = "10";
2094         assertTrue(SystemUtils.isOsVersionMatch(osVersion, "10.1"));
2095         assertTrue(SystemUtils.isOsVersionMatch(osVersion, "10.1.1"));
2096         assertTrue(SystemUtils.isOsVersionMatch(osVersion, "10.10"));
2097         assertTrue(SystemUtils.isOsVersionMatch(osVersion, "10.10.1"));
2098         osVersion = "10.1";
2099         assertTrue(SystemUtils.isOsVersionMatch(osVersion, "10.1"));
2100         assertTrue(SystemUtils.isOsVersionMatch(osVersion, "10.1.1"));
2101         assertFalse(SystemUtils.isOsVersionMatch(osVersion, "10.10"));
2102         assertFalse(SystemUtils.isOsVersionMatch(osVersion, "10.10.1"));
2103         osVersion = "10.1.1";
2104         assertTrue(SystemUtils.isOsVersionMatch(osVersion, "10.1"));
2105         assertTrue(SystemUtils.isOsVersionMatch(osVersion, "10.1.1"));
2106         assertFalse(SystemUtils.isOsVersionMatch(osVersion, "10.10"));
2107         assertFalse(SystemUtils.isOsVersionMatch(osVersion, "10.10.1"));
2108         osVersion = "10.10";
2109         assertFalse(SystemUtils.isOsVersionMatch(osVersion, "10.1"));
2110         assertFalse(SystemUtils.isOsVersionMatch(osVersion, "10.1.1"));
2111         assertTrue(SystemUtils.isOsVersionMatch(osVersion, "10.10"));
2112         assertTrue(SystemUtils.isOsVersionMatch(osVersion, "10.10.1"));
2113         osVersion = "10.10.1";
2114         assertFalse(SystemUtils.isOsVersionMatch(osVersion, "10.1"));
2115         assertFalse(SystemUtils.isOsVersionMatch(osVersion, "10.1.1"));
2116         assertTrue(SystemUtils.isOsVersionMatch(osVersion, "10.10"));
2117         assertTrue(SystemUtils.isOsVersionMatch(osVersion, "10.10.1"));
2118     }
2119 }