• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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  * http://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 package org.apache.commons.lang3;
20 
21 import static org.apache.commons.lang3.JavaVersion.JAVA_0_9;
22 import static org.apache.commons.lang3.JavaVersion.JAVA_10;
23 import static org.apache.commons.lang3.JavaVersion.JAVA_11;
24 import static org.apache.commons.lang3.JavaVersion.JAVA_12;
25 import static org.apache.commons.lang3.JavaVersion.JAVA_13;
26 import static org.apache.commons.lang3.JavaVersion.JAVA_14;
27 import static org.apache.commons.lang3.JavaVersion.JAVA_15;
28 import static org.apache.commons.lang3.JavaVersion.JAVA_16;
29 import static org.apache.commons.lang3.JavaVersion.JAVA_17;
30 import static org.apache.commons.lang3.JavaVersion.JAVA_18;
31 import static org.apache.commons.lang3.JavaVersion.JAVA_1_1;
32 import static org.apache.commons.lang3.JavaVersion.JAVA_1_2;
33 import static org.apache.commons.lang3.JavaVersion.JAVA_1_3;
34 import static org.apache.commons.lang3.JavaVersion.JAVA_1_4;
35 import static org.apache.commons.lang3.JavaVersion.JAVA_1_5;
36 import static org.apache.commons.lang3.JavaVersion.JAVA_1_6;
37 import static org.apache.commons.lang3.JavaVersion.JAVA_1_7;
38 import static org.apache.commons.lang3.JavaVersion.JAVA_1_8;
39 import static org.apache.commons.lang3.JavaVersion.JAVA_9;
40 import static org.apache.commons.lang3.JavaVersion.JAVA_RECENT;
41 import static org.apache.commons.lang3.JavaVersion.get;
42 import static org.apache.commons.lang3.JavaVersion.getJavaVersion;
43 import static org.junit.jupiter.api.Assertions.assertEquals;
44 import static org.junit.jupiter.api.Assertions.assertFalse;
45 import static org.junit.jupiter.api.Assertions.assertTrue;
46 
47 import org.junit.jupiter.api.Test;
48 
49 /**
50  * Unit tests {@link org.apache.commons.lang3.JavaVersion}.
51  */
52 public class JavaVersionTest extends AbstractLangTest {
53 
54     @Test
testGetJavaVersion()55     public void testGetJavaVersion() {
56         assertEquals(JAVA_0_9, get("0.9"), "0.9 failed");
57         assertEquals(JAVA_1_1, get("1.1"), "1.1 failed");
58         assertEquals(JAVA_1_2, get("1.2"), "1.2 failed");
59         assertEquals(JAVA_1_3, get("1.3"), "1.3 failed");
60         assertEquals(JAVA_1_4, get("1.4"), "1.4 failed");
61         assertEquals(JAVA_1_5, get("1.5"), "1.5 failed");
62         assertEquals(JAVA_1_6, get("1.6"), "1.6 failed");
63         assertEquals(JAVA_1_7, get("1.7"), "1.7 failed");
64         assertEquals(JAVA_1_8, get("1.8"), "1.8 failed");
65         assertEquals(JAVA_9, get("9"), "9 failed");
66         assertEquals(JAVA_10, get("10"), "10 failed");
67         assertEquals(JAVA_11, get("11"), "11 failed");
68         assertEquals(JAVA_12, get("12"), "12 failed");
69         assertEquals(JAVA_13, get("13"), "13 failed");
70         assertEquals(JAVA_14, get("14"), "14 failed");
71         assertEquals(JAVA_15, get("15"), "15 failed");
72         assertEquals(JAVA_16, get("16"), "16 failed");
73         assertEquals(JAVA_17, get("17"), "17 failed");
74         assertEquals(JAVA_18, get("18"), "18 failed");
75         assertEquals(JAVA_RECENT, get("1.10"), "1.10 failed");
76         // assertNull("2.10 unexpectedly worked", get("2.10"));
77         assertEquals(get("1.5"), getJavaVersion("1.5"), "Wrapper method failed");
78         assertEquals(JAVA_RECENT, get("19"), "Unhandled"); // LANG-1384
79     }
80 
81     @Test
testAtLeast()82     public void testAtLeast() {
83         assertFalse(JAVA_1_2.atLeast(JAVA_1_5), "1.2 at least 1.5 passed");
84         assertTrue(JAVA_1_5.atLeast(JAVA_1_2), "1.5 at least 1.2 failed");
85         assertFalse(JAVA_1_6.atLeast(JAVA_1_7), "1.6 at least 1.7 passed");
86 
87         assertTrue(JAVA_0_9.atLeast(JAVA_1_5), "0.9 at least 1.5 failed");
88         assertFalse(JAVA_0_9.atLeast(JAVA_1_6), "0.9 at least 1.6 passed");
89     }
90 
91     @Test
testToString()92     public void testToString() {
93         assertEquals("1.2", JAVA_1_2.toString());
94     }
95 
96 }
97