private void findVersions(String fileName) { // this file is created by the gradle task createClasspathsPropertiesFile readVersionsFile(fileName, (version, path) -> { Optional<String> parsedVersion = parseVersion(version); if (parsedVersion.isPresent()) { if (parsedVersion.get().equals("140") && SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_9)) { // Serialization filtering was added in 140, but the support for them in java 9+ was added // in 150. As a result, 140 servers and clients will fail categorically when run in // Java 9+ even with the additional libs (jaxb and activation) in the classpath System.err.println( "Geode version 140 is incompatible with Java 9 and higher. Skipping this version."); } else { classPaths.put(parsedVersion.get(), path); testVersions.add(parsedVersion.get()); } } }); Collections.sort(testVersions); }
/** * Assumes no security manager exists. */ @Test public void testGetJavaIoTmpDir() { final File dir = SystemUtils.getJavaIoTmpDir(); assertNotNull(dir); assertTrue(dir.exists()); }
/** * Assumes no security manager exists. */ @Test public void testGetUserHome() { final File dir = SystemUtils.getUserHome(); assertNotNull(dir); assertTrue(dir.exists()); }
/** * Decides if the operating system matches. * <p> * This method is package private instead of private to support unit test invocation. * </p> * * @param osName the actual OS name * @param osVersion the actual OS version * @param osNamePrefix the prefix for the expected OS name * @param osVersionPrefix the prefix for the expected OS version * @return true if matches, or false if not or can't determine */ static boolean isOSMatch(final String osName, final String osVersion, final String osNamePrefix, final String osVersionPrefix) { if (osName == null || osVersion == null) { return false; } return isOSNameMatch(osName, osNamePrefix) && isOSVersionMatch(osVersion, osVersionPrefix); }
/** * Assumes no security manager exists. */ @Test public void testGetUserDir() { final File dir = SystemUtils.getUserDir(); assertNotNull(dir); assertTrue(dir.exists()); }
/** * Decides if the operating system matches. * * @param osNamePrefix the prefix for the OS name * @return true if matches, or false if not or can't determine */ private static boolean getOsMatchesName(final String osNamePrefix) { return isOSNameMatch(OS_NAME, osNamePrefix); }
/** * <p> * Decides if the Java version matches. * </p> * * @param versionPrefix the prefix for the java version * @return true if matches, or false if not or can't determine */ private static boolean getJavaVersionMatches(final String versionPrefix) { return isJavaVersionMatch(JAVA_SPECIFICATION_VERSION, versionPrefix); }
/** * Decides if the operating system matches. * * @param osNamePrefix the prefix for the OS name * @param osVersionPrefix the prefix for the version * @return true if matches, or false if not or can't determine */ private static boolean getOsMatches(final String osNamePrefix, final String osVersionPrefix) { return isOSMatch(OS_NAME, OS_VERSION, osNamePrefix, osVersionPrefix); }
@Test public void testOsVersionMatches() throws Exception { String osVersion = null; assertFalse(SystemUtils.isOSVersionMatch(osVersion, "10.1")); assertFalse(SystemUtils.isOSVersionMatch(osVersion, "10.1")); assertTrue(SystemUtils.isOSVersionMatch(osVersion, "10.1")); assertTrue(SystemUtils.isOSVersionMatch(osVersion, "10.1.1")); assertTrue(SystemUtils.isOSVersionMatch(osVersion, "10.10")); assertTrue(SystemUtils.isOSVersionMatch(osVersion, "10.10.1")); assertTrue(SystemUtils.isOSVersionMatch(osVersion, "10.1")); assertTrue(SystemUtils.isOSVersionMatch(osVersion, "10.1.1")); assertFalse(SystemUtils.isOSVersionMatch(osVersion, "10.10")); assertFalse(SystemUtils.isOSVersionMatch(osVersion, "10.10.1")); assertTrue(SystemUtils.isOSVersionMatch(osVersion, "10.1")); assertTrue(SystemUtils.isOSVersionMatch(osVersion, "10.1.1")); assertFalse(SystemUtils.isOSVersionMatch(osVersion, "10.10")); assertFalse(SystemUtils.isOSVersionMatch(osVersion, "10.10.1")); assertFalse(SystemUtils.isOSVersionMatch(osVersion, "10.1")); assertFalse(SystemUtils.isOSVersionMatch(osVersion, "10.1.1")); assertTrue(SystemUtils.isOSVersionMatch(osVersion, "10.10")); assertTrue(SystemUtils.isOSVersionMatch(osVersion, "10.10.1")); assertFalse(SystemUtils.isOSVersionMatch(osVersion, "10.1")); assertFalse(SystemUtils.isOSVersionMatch(osVersion, "10.1.1")); assertTrue(SystemUtils.isOSVersionMatch(osVersion, "10.10"));
/** * Decides if the operating system matches. * <p> * This method is package private instead of private to support unit test invocation. * </p> * * @param osName the actual OS name * @param osVersion the actual OS version * @param osNamePrefix the prefix for the expected OS name * @param osVersionPrefix the prefix for the expected OS version * @return true if matches, or false if not or can't determine */ static boolean isOSMatch(final String osName, final String osVersion, final String osNamePrefix, final String osVersionPrefix) { if (osName == null || osVersion == null) { return false; } return isOSNameMatch(osName, osNamePrefix) && isOSVersionMatch(osVersion, osVersionPrefix); }
/** * Get the base URL for this configuration. * @return The base URI. */ @Nonnull public URI getBaseURI() { if (baseURI == null) { return SystemUtils.getUserDir().toURI(); } else { return baseURI; } }
@Test public void testOSMatchesName() { String osName = null; assertFalse(SystemUtils.isOSNameMatch(osName, "Windows")); osName = ""; assertFalse(SystemUtils.isOSNameMatch(osName, "Windows")); osName = "Windows 95"; assertTrue(SystemUtils.isOSNameMatch(osName, "Windows")); osName = "Windows NT"; assertTrue(SystemUtils.isOSNameMatch(osName, "Windows")); osName = "OS/2"; assertFalse(SystemUtils.isOSNameMatch(osName, "Windows")); }
@Test public void testJavaVersionMatches() { String javaVersion = null; assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.0")); assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.1")); assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.2")); assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.3")); assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.4")); assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.5")); assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.6")); assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.7")); assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.8")); assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "9")); javaVersion = ""; assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.0")); assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.1")); assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.2")); assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.3")); assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.4")); assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.5")); assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.6")); assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.7")); assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.8")); assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "9")); javaVersion = "1.0"; assertTrue(SystemUtils.isJavaVersionMatch(javaVersion, "1.0")); assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.1")); assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.2")); assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.3")); assertFalse(SystemUtils.isJavaVersionMatch(javaVersion, "1.4"));
@Test public void testOSMatchesNameAndVersion() { String osName = null; String osVersion = null; assertFalse(SystemUtils.isOSMatch(osName, osVersion, "Windows 9", "4.1")); osName = ""; osVersion = ""; assertFalse(SystemUtils.isOSMatch(osName, osVersion, "Windows 9", "4.1")); osName = "Windows 95"; osVersion = "4.0"; assertFalse(SystemUtils.isOSMatch(osName, osVersion, "Windows 9", "4.1")); osName = "Windows 95"; osVersion = "4.1"; assertTrue(SystemUtils.isOSMatch(osName, osVersion, "Windows 9", "4.1")); osName = "Windows 98"; osVersion = "4.1"; assertTrue(SystemUtils.isOSMatch(osName, osVersion, "Windows 9", "4.1")); osName = "Windows NT"; osVersion = "4.0"; assertFalse(SystemUtils.isOSMatch(osName, osVersion, "Windows 9", "4.1")); osName = "OS/2"; osVersion = "4.0"; assertFalse(SystemUtils.isOSMatch(osName, osVersion, "Windows 9", "4.1")); }
&& !SystemUtils.isJavaVersionAtLeast(JavaVersion.JAVA_9)) { argumentList.add("-d64");
public static File getJavaIoTmpDir(ActionContext actionContext){ return SystemUtils.getJavaIoTmpDir(); }
public static File getUserHome(ActionContext actionContext){ return SystemUtils.getUserHome(); }
/** * Decides if the operating system matches. * <p> * This method is package private instead of private to support unit test invocation. * </p> * * @param osName the actual OS name * @param osVersion the actual OS version * @param osNamePrefix the prefix for the expected OS name * @param osVersionPrefix the prefix for the expected OS version * @return true if matches, or false if not or can't determine */ static boolean isOSMatch(final String osName, final String osVersion, final String osNamePrefix, final String osVersionPrefix) { if (osName == null || osVersion == null) { return false; } return isOSNameMatch(osName, osNamePrefix) && isOSVersionMatch(osVersion, osVersionPrefix); }
/** * Used to obtain base directory used in tests. Uses the build directory; "target" in the current working directory. */ private File getBuidDirectory() { return FileUtils.newFile(getUserDir(), "target"); }
/** * Decides if the operating system matches. * * @param osNamePrefix the prefix for the OS name * @return true if matches, or false if not or can't determine */ private static boolean getOsMatchesName(final String osNamePrefix) { return isOSNameMatch(OS_NAME, osNamePrefix); }