1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.commons.lang3;
20
21 import static org.junit.jupiter.api.Assertions.assertEquals;
22 import static org.junit.jupiter.api.Assertions.assertFalse;
23 import static org.junit.jupiter.api.Assertions.assertNull;
24 import static org.junit.jupiter.api.Assertions.assertTrue;
25
26 import org.junit.jupiter.api.Test;
27
28
29
30
31 class JavaVersionTest extends AbstractLangTest {
32
33 @Test
34 void testAtLeast() {
35 assertFalse(JavaVersion.JAVA_1_2.atLeast(JavaVersion.JAVA_1_5), "1.2 at least 1.5 passed");
36 assertTrue(JavaVersion.JAVA_1_5.atLeast(JavaVersion.JAVA_1_2), "1.5 at least 1.2 failed");
37 assertFalse(JavaVersion.JAVA_1_6.atLeast(JavaVersion.JAVA_1_7), "1.6 at least 1.7 passed");
38
39 assertTrue(JavaVersion.JAVA_0_9.atLeast(JavaVersion.JAVA_1_5), "0.9 at least 1.5 failed");
40 assertFalse(JavaVersion.JAVA_0_9.atLeast(JavaVersion.JAVA_1_6), "0.9 at least 1.6 passed");
41 }
42
43 @Test
44 void testGetJavaVersion() throws Exception {
45 assertEquals(JavaVersion.JAVA_0_9, JavaVersion.get("0.9"), "0.9 failed");
46 assertEquals(JavaVersion.JAVA_1_1, JavaVersion.get("1.1"), "1.1 failed");
47 assertEquals(JavaVersion.JAVA_1_2, JavaVersion.get("1.2"), "1.2 failed");
48 assertEquals(JavaVersion.JAVA_1_3, JavaVersion.get("1.3"), "1.3 failed");
49 assertEquals(JavaVersion.JAVA_1_4, JavaVersion.get("1.4"), "1.4 failed");
50 assertEquals(JavaVersion.JAVA_1_5, JavaVersion.get("1.5"), "1.5 failed");
51 assertEquals(JavaVersion.JAVA_1_6, JavaVersion.get("1.6"), "1.6 failed");
52 assertEquals(JavaVersion.JAVA_1_7, JavaVersion.get("1.7"), "1.7 failed");
53 assertEquals(JavaVersion.JAVA_1_8, JavaVersion.get("1.8"), "1.8 failed");
54 assertEquals(JavaVersion.JAVA_9, JavaVersion.get("9"));
55 assertEquals(JavaVersion.JAVA_10, JavaVersion.get("10"));
56 assertEquals(JavaVersion.JAVA_11, JavaVersion.get("11"));
57 assertEquals(JavaVersion.JAVA_12, JavaVersion.get("12"));
58 assertEquals(JavaVersion.JAVA_13, JavaVersion.get("13"));
59 assertEquals(JavaVersion.JAVA_14, JavaVersion.get("14"));
60 assertEquals(JavaVersion.JAVA_15, JavaVersion.get("15"));
61 assertEquals(JavaVersion.JAVA_16, JavaVersion.get("16"));
62 assertEquals(JavaVersion.JAVA_17, JavaVersion.get("17"));
63 assertEquals(JavaVersion.JAVA_18, JavaVersion.get("18"));
64 assertEquals(JavaVersion.JAVA_19, JavaVersion.get("19"));
65 assertEquals(JavaVersion.JAVA_20, JavaVersion.get("20"));
66 assertEquals(JavaVersion.JAVA_21, JavaVersion.get("21"));
67 assertEquals(JavaVersion.JAVA_22, JavaVersion.get("22"));
68 assertEquals(JavaVersion.JAVA_23, JavaVersion.get("23"));
69 assertEquals(JavaVersion.JAVA_24, JavaVersion.get("24"));
70 assertEquals(JavaVersion.JAVA_25, JavaVersion.get("25"));
71 assertEquals(JavaVersion.JAVA_26, JavaVersion.get("26"));
72 assertEquals(JavaVersion.JAVA_27, JavaVersion.get("27"));
73 assertEquals(JavaVersion.JAVA_28, JavaVersion.get("28"));
74 }
75
76 @Test
77 void testGetJavaVersionMalformed() throws Exception {
78
79 assertEquals(JavaVersion.JAVA_RECENT, JavaVersion.get("1.10"), "1.10 failed");
80
81 assertEquals(JavaVersion.get("1.5"), JavaVersion.getJavaVersion("1.5"), "Wrapper method failed");
82 assertEquals(JavaVersion.JAVA_RECENT, JavaVersion.get("99"), "Unhandled");
83
84
85 assertNull(JavaVersion.get("1."));
86 assertNull(JavaVersion.get("bogus"));
87 assertNull(JavaVersion.get("1.x"));
88 assertNull(JavaVersion.get(""));
89 }
90
91 @Test
92 void testToString() {
93 assertEquals("1.2", JavaVersion.JAVA_1_2.toString());
94 }
95
96 }