HeapBinaryFormatTest.java revision 0
829N/A/*
2362N/A * Copyright 2005 Sun Microsystems, Inc. All Rights Reserved.
829N/A * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
829N/A *
829N/A * This code is free software; you can redistribute it and/or modify it
829N/A * under the terms of the GNU General Public License version 2 only, as
2362N/A * published by the Free Software Foundation.
829N/A *
2362N/A * This code is distributed in the hope that it will be useful, but WITHOUT
829N/A * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
829N/A * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
829N/A * version 2 for more details (a copy is included in the LICENSE file that
829N/A * accompanied this code).
829N/A *
829N/A * You should have received a copy of the GNU General Public License version
829N/A * 2 along with this work; if not, write to the Free Software Foundation,
829N/A * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
829N/A *
829N/A * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
829N/A * CA 95054 USA or visit www.sun.com if you need additional information or
2362N/A * have any questions.
2362N/A */
2362N/A
829N/A
829N/A/* @test
829N/A * @bug 4965057 6313381
829N/A * @summary Test jvmti hprof format=b
829N/A *
829N/A * @compile -source 1.5 -g:source HelloWorld.java ../DemoRun.java
829N/A * @build HeapBinaryFormatTest
829N/A * @run main HeapBinaryFormatTest HelloWorld
829N/A */
829N/A
829N/Apublic class HeapBinaryFormatTest {
829N/A
829N/A public static void main(String args[]) throws Exception {
829N/A DemoRun hprof;
829N/A
829N/A /* Run JVMTI hprof agent to get binary format dump */
829N/A hprof = new DemoRun("hprof", "heap=dump,format=b,logflags=4");
829N/A hprof.runit(args[0]);
829N/A
829N/A /* Make sure patterns in output look ok */
829N/A if (hprof.output_contains("ERROR")) {
829N/A throw new RuntimeException("Test failed - ERROR seen in output");
829N/A }
829N/A
829N/A /* Try a variation */
829N/A String vm_opts[] = new String[1];
829N/A vm_opts[0] = "-Xmx2100m";
829N/A /* Crashes on small Linux machines: (like fyi)
829N/A How can I tell how much real memory is on a machine?
829N/A hprof.runit(args[0], vm_opts);
829N/A */
829N/A
829N/A /* Make sure patterns in output look ok */
829N/A if (hprof.output_contains("ERROR")) {
829N/A throw new RuntimeException("Test failed - ERROR seen in output");
829N/A }
829N/A
829N/A /* Must be a pass. */
829N/A System.out.println("Test passed - cleanly terminated");
829N/A }
829N/A}
829N/A