< prev index next >

test/gc/arguments/TestSelectDefaultGC.java

Print this page

        

*** 34,64 **** import jdk.test.lib.*; import java.util.regex.*; public class TestSelectDefaultGC { - public static boolean versionStringContains(OutputAnalyzer output, String pattern) { - Matcher matcher = Pattern.compile(pattern, Pattern.MULTILINE).matcher(output.getStderr()); - return matcher.find(); - } - public static void assertVMOption(OutputAnalyzer output, String option, boolean value) { output.shouldMatch(" " + option + " .*=.* " + value + " "); } public static void main(String[] args) throws Exception { // Start VM without specifying GC ProcessBuilder pb = ProcessTools.createJavaProcessBuilder("-XX:+PrintFlagsFinal", "-version"); OutputAnalyzer output = new OutputAnalyzer(pb.start()); output.shouldHaveExitValue(0); ! boolean isServerVM = versionStringContains(output, "Server VM"); // Verify GC selection ! assertVMOption(output, "UseParallelGC", isServerVM); ! assertVMOption(output, "UseParallelOldGC", isServerVM); assertVMOption(output, "UseSerialGC", !isServerVM); assertVMOption(output, "UseConcMarkSweepGC", false); - assertVMOption(output, "UseG1GC", false); assertVMOption(output, "UseParNewGC", false); } } --- 34,63 ---- import jdk.test.lib.*; import java.util.regex.*; public class TestSelectDefaultGC { public static void assertVMOption(OutputAnalyzer output, String option, boolean value) { output.shouldMatch(" " + option + " .*=.* " + value + " "); } public static void main(String[] args) throws Exception { // Start VM without specifying GC ProcessBuilder pb = ProcessTools.createJavaProcessBuilder("-XX:+PrintFlagsFinal", "-version"); OutputAnalyzer output = new OutputAnalyzer(pb.start()); output.shouldHaveExitValue(0); ! boolean isServerVM = Platform.isServer(); ! boolean isEmbeddedVM = Platform.isEmbedded(); // Verify GC selection ! // G1 is default for non-embedded server VMs ! assertVMOption(output, "UseG1GC", isServerVM && !isEmbeddedVM); ! // Parallel is default for embedded server VMs ! assertVMOption(output, "UseParallelGC", isServerVM && isEmbeddedVM); ! assertVMOption(output, "UseParallelOldGC", isServerVM && isEmbeddedVM); ! // Serial is default for non-server VMs assertVMOption(output, "UseSerialGC", !isServerVM); assertVMOption(output, "UseConcMarkSweepGC", false); assertVMOption(output, "UseParNewGC", false); } }
< prev index next >