test/runtime/SharedArchiveFile/DefaultUseWithClient.java
Print this page
*** 1,7 ****
/*
! * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
--- 1,7 ----
/*
! * Copyright (c) 2014, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*** 29,76 ****
* java.management
* @run main DefaultUseWithClient
* @bug 8032224
*/
! import jdk.test.lib.process.ProcessTools;
import jdk.test.lib.process.OutputAnalyzer;
import jdk.test.lib.Platform;
import java.io.File;
public class DefaultUseWithClient {
public static void main(String[] args) throws Exception {
- String fileName = "DefaultUseWithClient.jsa";
-
// On 32-bit windows CDS should be on by default in "-client" config
// Skip this test on any other platform
boolean is32BitWindows = (Platform.isWindows() && Platform.is32bit());
if (!is32BitWindows) {
System.out.println("Test only applicable on 32-bit Windows. Skipping");
return;
}
! // create the archive
! ProcessBuilder pb = ProcessTools.createJavaProcessBuilder(
! "-XX:+UnlockDiagnosticVMOptions",
! "-XX:SharedArchiveFile=./" + fileName,
! "-Xshare:dump");
! OutputAnalyzer output = new OutputAnalyzer(pb.start());
! output.shouldHaveExitValue(0);
!
! pb = ProcessTools.createJavaProcessBuilder(
! "-XX:+UnlockDiagnosticVMOptions",
! "-XX:SharedArchiveFile=./" + fileName,
! "-client",
! "-XX:+PrintSharedSpaces",
! "-version");
!
! output = new OutputAnalyzer(pb.start());
! try {
! output.shouldContain("sharing");
! } catch (RuntimeException e) {
! // if sharing failed due to ASLR or similar reasons,
! // check whether sharing was attempted at all (UseSharedSpaces)
! output.shouldContain("UseSharedSpaces:");
! }
! output.shouldHaveExitValue(0);
}
}
--- 29,52 ----
* java.management
* @run main DefaultUseWithClient
* @bug 8032224
*/
! import jdk.test.lib.cds.CDSTestUtils;
import jdk.test.lib.process.OutputAnalyzer;
import jdk.test.lib.Platform;
import java.io.File;
public class DefaultUseWithClient {
public static void main(String[] args) throws Exception {
// On 32-bit windows CDS should be on by default in "-client" config
// Skip this test on any other platform
boolean is32BitWindows = (Platform.isWindows() && Platform.is32bit());
if (!is32BitWindows) {
System.out.println("Test only applicable on 32-bit Windows. Skipping");
return;
}
! CDSTestUtils.createArchiveAndCheck();
! CDSTestUtils.runWithArchiveAndCheck("-client", "-XX:+PrintSharedSpaces");
}
}