hotspot/test/runtime/logging/StartupTimeTest.java
changeset 46658 72c739e058d4
parent 44993 f61bcd80ec1f
equal deleted inserted replaced
46651:a0aef4e7599b 46658:72c739e058d4
    37 public class StartupTimeTest {
    37 public class StartupTimeTest {
    38     static void analyzeOutputOn(ProcessBuilder pb) throws Exception {
    38     static void analyzeOutputOn(ProcessBuilder pb) throws Exception {
    39         OutputAnalyzer output = new OutputAnalyzer(pb.start());
    39         OutputAnalyzer output = new OutputAnalyzer(pb.start());
    40         output.shouldMatch("(Genesis, [0-9]+.[0-9]+ secs)");
    40         output.shouldMatch("(Genesis, [0-9]+.[0-9]+ secs)");
    41         output.shouldMatch("(Start VMThread, [0-9]+.[0-9]+ secs)");
    41         output.shouldMatch("(Start VMThread, [0-9]+.[0-9]+ secs)");
       
    42         output.shouldMatch("(Initialize module system, [0-9]+.[0-9]+ secs)");
    42         output.shouldMatch("(Create VM, [0-9]+.[0-9]+ secs)");
    43         output.shouldMatch("(Create VM, [0-9]+.[0-9]+ secs)");
    43         output.shouldHaveExitValue(0);
    44         output.shouldHaveExitValue(0);
    44     }
    45     }
    45 
    46 
    46     static void analyzeOutputOff(ProcessBuilder pb) throws Exception {
    47     static void analyzeOutputOff(ProcessBuilder pb) throws Exception {
    47         OutputAnalyzer output = new OutputAnalyzer(pb.start());
    48         OutputAnalyzer output = new OutputAnalyzer(pb.start());
    48         output.shouldNotContain("[startuptime]");
    49         output.shouldNotContain("[startuptime]");
    49         output.shouldHaveExitValue(0);
       
    50     }
       
    51 
       
    52     static void analyzeModulesOutputOn(ProcessBuilder pb) throws Exception {
       
    53         OutputAnalyzer output = new OutputAnalyzer(pb.start());
       
    54         output.shouldMatch("(Phase2 initialization, [0-9]+.[0-9]+ secs)");
       
    55         output.shouldHaveExitValue(0);
       
    56     }
       
    57 
       
    58     static void analyzeModulesOutputOff(ProcessBuilder pb) throws Exception {
       
    59         OutputAnalyzer output = new OutputAnalyzer(pb.start());
       
    60         output.shouldNotContain("[module,startuptime]");
       
    61         output.shouldHaveExitValue(0);
    50         output.shouldHaveExitValue(0);
    62     }
    51     }
    63 
    52 
    64     public static void main(String[] args) throws Exception {
    53     public static void main(String[] args) throws Exception {
    65         ProcessBuilder pb = ProcessTools.createJavaProcessBuilder("-Xlog:startuptime",
    54         ProcessBuilder pb = ProcessTools.createJavaProcessBuilder("-Xlog:startuptime",
    67         analyzeOutputOn(pb);
    56         analyzeOutputOn(pb);
    68 
    57 
    69         pb = ProcessTools.createJavaProcessBuilder("-Xlog:startuptime=off",
    58         pb = ProcessTools.createJavaProcessBuilder("-Xlog:startuptime=off",
    70                                                    InnerClass.class.getName());
    59                                                    InnerClass.class.getName());
    71         analyzeOutputOff(pb);
    60         analyzeOutputOff(pb);
    72 
       
    73         pb = ProcessTools.createJavaProcessBuilder("-Xlog:startuptime+module",
       
    74                                                    InnerClass.class.getName());
       
    75         analyzeModulesOutputOn(pb);
       
    76 
       
    77         pb = ProcessTools.createJavaProcessBuilder("-Xlog:startuptime+module=off",
       
    78                                                    InnerClass.class.getName());
       
    79         analyzeModulesOutputOff(pb);
       
    80     }
    61     }
    81 
    62 
    82     public static class InnerClass {
    63     public static class InnerClass {
    83         public static void main(String[] args) throws Exception {
    64         public static void main(String[] args) throws Exception {
    84             System.out.println("Testing startuptime.");
    65             System.out.println("Testing startuptime.");