31 */
32
33 import jdk.test.lib.JDKToolFinder;
34 import jdk.test.lib.OutputAnalyzer;
35 import jdk.test.lib.ProcessTools;
36 import java.util.ArrayList;
37 import java.util.Collections;
38
39 public class TestVerifyDuringStartup {
40 public static void main(String args[]) throws Exception {
41 ArrayList<String> vmOpts = new ArrayList();
42
43 String testVmOptsStr = System.getProperty("test.java.opts");
44 if (!testVmOptsStr.isEmpty()) {
45 String[] testVmOpts = testVmOptsStr.split(" ");
46 Collections.addAll(vmOpts, testVmOpts);
47 }
48 Collections.addAll(vmOpts, new String[] {"-XX:-UseTLAB",
49 "-XX:+UnlockDiagnosticVMOptions",
50 "-XX:+VerifyDuringStartup",
51 "-version"});
52
53 System.out.print("Testing:\n" + JDKToolFinder.getJDKTool("java"));
54 for (int i = 0; i < vmOpts.size(); i += 1) {
55 System.out.print(" " + vmOpts.get(i));
56 }
57 System.out.println();
58
59 ProcessBuilder pb =
60 ProcessTools.createJavaProcessBuilder(vmOpts.toArray(new String[vmOpts.size()]));
61 OutputAnalyzer output = new OutputAnalyzer(pb.start());
62
63 System.out.println("Output:\n" + output.getOutput());
64
65 output.shouldContain("[Verifying");
66 output.shouldHaveExitValue(0);
67 }
68 }
|
31 */
32
33 import jdk.test.lib.JDKToolFinder;
34 import jdk.test.lib.OutputAnalyzer;
35 import jdk.test.lib.ProcessTools;
36 import java.util.ArrayList;
37 import java.util.Collections;
38
39 public class TestVerifyDuringStartup {
40 public static void main(String args[]) throws Exception {
41 ArrayList<String> vmOpts = new ArrayList();
42
43 String testVmOptsStr = System.getProperty("test.java.opts");
44 if (!testVmOptsStr.isEmpty()) {
45 String[] testVmOpts = testVmOptsStr.split(" ");
46 Collections.addAll(vmOpts, testVmOpts);
47 }
48 Collections.addAll(vmOpts, new String[] {"-XX:-UseTLAB",
49 "-XX:+UnlockDiagnosticVMOptions",
50 "-XX:+VerifyDuringStartup",
51 "-Xlog:gc+verify=debug",
52 "-version"});
53
54 System.out.print("Testing:\n" + JDKToolFinder.getJDKTool("java"));
55 for (int i = 0; i < vmOpts.size(); i += 1) {
56 System.out.print(" " + vmOpts.get(i));
57 }
58 System.out.println();
59
60 ProcessBuilder pb =
61 ProcessTools.createJavaProcessBuilder(vmOpts.toArray(new String[vmOpts.size()]));
62 OutputAnalyzer output = new OutputAnalyzer(pb.start());
63
64 System.out.println("Output:\n" + output.getOutput());
65
66 output.shouldContain("Verifying");
67 output.shouldHaveExitValue(0);
68 }
69 }
|