< prev index next >

test/tools/pack200/Pack200Props.java

Print this page

        

*** 1,7 **** /* ! * Copyright (c) 2010, 2015, 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) 2010, 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.
*** 36,67 **** import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.jar.Pack200; import java.util.jar.Pack200.Packer; /* * Run this against a large jar file, by default the packer should generate only * one segment, parse the output of the packer to verify if this is indeed true. */ public class Pack200Props { ! public static void main(String... args) throws IOException { verifyDefaults(); File out = new File("test" + Utils.PACK_FILE_EXT); out.delete(); verifySegmentLimit(out); Utils.cleanup(); } ! static void verifySegmentLimit(File outFile) throws IOException { ! File sdkHome = Utils.JavaSDK; File testJar = Utils.createRtJar(); ! System.out.println("using pack200: " + Utils.getPack200Cmd()); ! List<String> cmdsList = new ArrayList<>(); cmdsList.add(Utils.getPack200Cmd()); cmdsList.add("-J-Xshare:off"); cmdsList.add("-J-Xmx1280m"); cmdsList.add("--effort=1"); --- 36,70 ---- import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.jar.Pack200; import java.util.jar.Pack200.Packer; + import java.util.logging.Logger; /* * Run this against a large jar file, by default the packer should generate only * one segment, parse the output of the packer to verify if this is indeed true. */ public class Pack200Props { ! final static Logger log = Logger.getLogger("Pack200Props"); ! ! public static void main(String... args) throws Exception { verifyDefaults(); File out = new File("test" + Utils.PACK_FILE_EXT); out.delete(); verifySegmentLimit(out); + log.info("cleanup"); Utils.cleanup(); } ! static void verifySegmentLimit(File outFile) throws Exception { ! log.info("creating jar"); File testJar = Utils.createRtJar(); ! log.info("using pack200: " + Utils.getPack200Cmd()); List<String> cmdsList = new ArrayList<>(); cmdsList.add(Utils.getPack200Cmd()); cmdsList.add("-J-Xshare:off"); cmdsList.add("-J-Xmx1280m"); cmdsList.add("--effort=1");
*** 69,93 **** --- 72,99 ---- cmdsList.add("--no-gzip"); cmdsList.add(outFile.getName()); cmdsList.add(testJar.getAbsolutePath()); List<String> outList = Utils.runExec(cmdsList); + log.info("verifying"); int count = 0; for (String line : outList) { System.out.println(line); if (line.matches(".*Transmitted.*files of.*input bytes in a segment of.*bytes")) { count++; } } + log.info("fini"); if (count == 0) { throw new RuntimeException("no segments or no output ????"); } else if (count > 1) { throw new RuntimeException("multiple segments detected, expected 1"); } } private static void verifyDefaults() { + log.info("start"); Map<String, String> expectedDefaults = new HashMap<>(); Packer p = Pack200.newPacker(); expectedDefaults.put("com.sun.java.util.jar.pack.disable.native", p.FALSE); expectedDefaults.put("com.sun.java.util.jar.pack.verbose", "0");
*** 119,128 **** --- 125,135 ---- + "\n value obtained: " + x); errors++; } } } + log.info("fini"); if (errors > 0) { throw new RuntimeException(errors + " error(s) encountered in default properties verification"); } }
< prev index next >