test/runtime/CompressedOops/CompressedClassSpaceSize.java
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File 8059557_open Sdiff test/runtime/CompressedOops

test/runtime/CompressedOops/CompressedClassSpaceSize.java

Print this page




  25  * @test
  26  * @bug 8022865
  27  * @summary Tests for the -XX:CompressedClassSpaceSize command line option
  28  * @library /testlibrary
  29  * @modules java.base/sun.misc
  30  *          java.management
  31  * @run main CompressedClassSpaceSize
  32  */
  33 import jdk.test.lib.*;
  34 
  35 public class CompressedClassSpaceSize {
  36 
  37     public static void main(String[] args) throws Exception {
  38         ProcessBuilder pb;
  39         OutputAnalyzer output;
  40         if (Platform.is64bit()) {
  41             // Minimum size is 1MB
  42             pb = ProcessTools.createJavaProcessBuilder("-XX:CompressedClassSpaceSize=0",
  43                                                        "-version");
  44             output = new OutputAnalyzer(pb.start());
  45             output.shouldContain("CompressedClassSpaceSize of 0 is invalid")
  46                   .shouldHaveExitValue(1);
  47 
  48             // Invalid size of -1 should be handled correctly
  49             pb = ProcessTools.createJavaProcessBuilder("-XX:CompressedClassSpaceSize=-1",
  50                                                        "-version");
  51             output = new OutputAnalyzer(pb.start());
  52             output.shouldContain("Improperly specified VM option 'CompressedClassSpaceSize=-1'")
  53                   .shouldHaveExitValue(1);
  54 
  55 
  56             // Maximum size is 3GB
  57             pb = ProcessTools.createJavaProcessBuilder("-XX:CompressedClassSpaceSize=4g",
  58                                                        "-version");
  59             output = new OutputAnalyzer(pb.start());
  60             output.shouldContain("CompressedClassSpaceSize of 4294967296 is invalid")
  61                   .shouldHaveExitValue(1);
  62 
  63 
  64             // Make sure the minimum size is set correctly and printed
  65             pb = ProcessTools.createJavaProcessBuilder("-XX:+UnlockDiagnosticVMOptions",
  66                                                        "-XX:CompressedClassSpaceSize=1m",
  67                                                        "-XX:+PrintCompressedOopsMode",
  68                                                        "-version");
  69             output = new OutputAnalyzer(pb.start());
  70             output.shouldContain("Compressed class space size: 1048576")
  71                   .shouldHaveExitValue(0);
  72 
  73 
  74             // Make sure the maximum size is set correctly and printed
  75             pb = ProcessTools.createJavaProcessBuilder("-XX:+UnlockDiagnosticVMOptions",
  76                                                        "-XX:CompressedClassSpaceSize=3g",
  77                                                        "-XX:+PrintCompressedOopsMode",
  78                                                        "-version");
  79             output = new OutputAnalyzer(pb.start());
  80             output.shouldContain("Compressed class space size: 3221225472")




  25  * @test
  26  * @bug 8022865
  27  * @summary Tests for the -XX:CompressedClassSpaceSize command line option
  28  * @library /testlibrary
  29  * @modules java.base/sun.misc
  30  *          java.management
  31  * @run main CompressedClassSpaceSize
  32  */
  33 import jdk.test.lib.*;
  34 
  35 public class CompressedClassSpaceSize {
  36 
  37     public static void main(String[] args) throws Exception {
  38         ProcessBuilder pb;
  39         OutputAnalyzer output;
  40         if (Platform.is64bit()) {
  41             // Minimum size is 1MB
  42             pb = ProcessTools.createJavaProcessBuilder("-XX:CompressedClassSpaceSize=0",
  43                                                        "-version");
  44             output = new OutputAnalyzer(pb.start());
  45             output.shouldContain("outside the allowed range")
  46                   .shouldHaveExitValue(1);
  47 
  48             // Invalid size of -1 should be handled correctly
  49             pb = ProcessTools.createJavaProcessBuilder("-XX:CompressedClassSpaceSize=-1",
  50                                                        "-version");
  51             output = new OutputAnalyzer(pb.start());
  52             output.shouldContain("Improperly specified VM option 'CompressedClassSpaceSize=-1'")
  53                   .shouldHaveExitValue(1);
  54 
  55 
  56             // Maximum size is 3GB
  57             pb = ProcessTools.createJavaProcessBuilder("-XX:CompressedClassSpaceSize=4g",
  58                                                        "-version");
  59             output = new OutputAnalyzer(pb.start());
  60             output.shouldContain("outside the allowed range")
  61                   .shouldHaveExitValue(1);
  62 
  63 
  64             // Make sure the minimum size is set correctly and printed
  65             pb = ProcessTools.createJavaProcessBuilder("-XX:+UnlockDiagnosticVMOptions",
  66                                                        "-XX:CompressedClassSpaceSize=1m",
  67                                                        "-XX:+PrintCompressedOopsMode",
  68                                                        "-version");
  69             output = new OutputAnalyzer(pb.start());
  70             output.shouldContain("Compressed class space size: 1048576")
  71                   .shouldHaveExitValue(0);
  72 
  73 
  74             // Make sure the maximum size is set correctly and printed
  75             pb = ProcessTools.createJavaProcessBuilder("-XX:+UnlockDiagnosticVMOptions",
  76                                                        "-XX:CompressedClassSpaceSize=3g",
  77                                                        "-XX:+PrintCompressedOopsMode",
  78                                                        "-version");
  79             output = new OutputAnalyzer(pb.start());
  80             output.shouldContain("Compressed class space size: 3221225472")


test/runtime/CompressedOops/CompressedClassSpaceSize.java
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File