--- old/test/langtools/tools/javah/T7126832/T7126832.java 2017-11-09 15:06:54.990564656 -0800 +++ /dev/null 2017-01-21 22:54:52.877512947 -0800 @@ -1,108 +0,0 @@ -/* - * Copyright (c) 2012, 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. - * - * This code is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * version 2 for more details (a copy is included in the LICENSE file that - * accompanied this code). - * - * You should have received a copy of the GNU General Public License version - * 2 along with this work; if not, write to the Free Software Foundation, - * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. - * - * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA - * or visit www.oracle.com if you need additional information or have any - * questions. - */ - -/* - * @test - * @bug 7126832 - * @modules jdk.compiler/com.sun.tools.javah - * @compile java.java - * @summary com.sun.tools.javac.api.ClientCodeWrapper$WrappedJavaFileManager cannot be cast - * @run main T7126832 - */ - -import java.io.*; -import java.util.*; - -public class T7126832 { - public static void main(String... args) throws Exception { - new T7126832().run(); - } - - void run() throws Exception { - Locale prev = Locale.getDefault(); - Locale.setDefault(Locale.ENGLISH); - try { - // Verify that a .java file is correctly diagnosed - File ff = writeFile(new File("JavahTest.java"), "class JavahTest {}"); - test(Arrays.asList(ff.getPath()), 1, "Could not find class file for 'JavahTest.java'."); - - // Verify that a class named 'xx.java' is accepted. - // Note that ./xx/java.class exists, so this should work ok - test(Arrays.asList("xx.java"), 0, null); - - if (errors > 0) { - throw new Exception(errors + " errors occurred"); - } - } finally { - Locale.setDefault(prev); - } - } - - void test(List args, int expectRC, String expectOut) { - System.err.println("Test: " + args - + " rc:" + expectRC - + ((expectOut != null) ? " out:" + expectOut : "")); - - StringWriter sw = new StringWriter(); - PrintWriter pw = new PrintWriter(sw); - int rc = 0; - String out = null; - try { - rc = com.sun.tools.javah.Main.run(args.toArray(new String[args.size()]), pw); - out = sw.toString(); - } catch(Exception ee) { - rc = 1; - out = ee.toString();; - } - pw.close(); - if (!out.isEmpty()) { - System.err.println(out); - } - if (rc != expectRC) { - error("Unexpected exit code: " + rc + "; expected: " + expectRC); - } - if (expectOut != null && !out.contains(expectOut)) { - error("Expected string not found: " + expectOut); - } - - System.err.println(); - } - - File writeFile(File ff, String ss) throws IOException { - if (ff.getParentFile() != null) - ff.getParentFile().mkdirs(); - - try (FileWriter out = new FileWriter(ff)) { - out.write(ss); - } - return ff; - } - - void error(String msg) { - System.err.println(msg); - errors++; - } - - int errors; -} -