1 package org.robolectric; 2 3 import static com.google.common.truth.Truth.assertThat; 4 5 import org.junit.Test; 6 import org.junit.runner.RunWith; 7 import org.junit.runners.JUnit4; 8 import org.robolectric.util.JavaVersion; 9 10 @RunWith(JUnit4.class) 11 public class JavaVersionTest { 12 @Test jdk8()13 public void jdk8() { 14 check("1.8.1u40", "1.8.5u60"); 15 check("1.8.0u40", "1.8.0u60"); 16 check("1.8.0u40", "1.8.0u100"); 17 } 18 19 @Test jdk9()20 public void jdk9() { 21 check("9.0.1+12", "9.0.2+12"); 22 check("9.0.2+60", "9.0.2+100"); 23 } 24 25 @Test differentJdk()26 public void differentJdk() { 27 check("1.7.0", "1.8.0u60"); 28 check("1.8.1u40", "9.0.2+12"); 29 } 30 31 @Test longer()32 public void longer() { 33 check("1.8.0", "1.8.0.1"); 34 } 35 36 @Test longerEquality()37 public void longerEquality() { 38 checkEqual("1.8.0", "1.8.0"); 39 checkEqual("1.8.0u33", "1.8.0u33"); 40 checkEqual("5", "5"); 41 } 42 check(String v1, String v2)43 private static void check(String v1, String v2) { 44 assertThat(new JavaVersion(v1).compareTo(new JavaVersion(v2))).isLessThan(0); 45 } 46 checkEqual(String v1, String v2)47 private static void checkEqual(String v1, String v2) { 48 assertThat(new JavaVersion(v1).compareTo(new JavaVersion(v2))).isEqualTo(0); 49 } 50 51 }