8034254: Don't use binary testing files broken.jar
authorksrini
Thu, 07 Dec 2017 21:07:12 -0800
changeset 48217 7a83c7afb383
parent 48216 e3b6cb90d7ce
child 48218 8ad12da0cbc7
8034254: Don't use binary testing files broken.jar Reviewed-by: jjg
test/langtools/jdk/javadoc/doclet/testBadPackageFileInJar/TestBadPackageFileInJar.java
test/langtools/jdk/javadoc/doclet/testBadPackageFileInJar/badPackageFileInJar.jar
test/langtools/tools/javac/T5090006/AssertionFailureTest.java
test/langtools/tools/javac/T5090006/broken.jar
--- a/test/langtools/jdk/javadoc/doclet/testBadPackageFileInJar/TestBadPackageFileInJar.java	Fri Dec 08 09:40:14 2017 +0800
+++ b/test/langtools/jdk/javadoc/doclet/testBadPackageFileInJar/TestBadPackageFileInJar.java	Thu Dec 07 21:07:12 2017 -0800
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2002, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 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
@@ -24,27 +24,52 @@
 /*
  * @test
  * @bug 4691095 6306394
- * @summary Test to make sure that Javadoc emits a useful warning
- * when a bad package.html file is in the JAR.
+ * @summary Make sure that Javadoc emits a useful warning
+ *          when a bad package.html exists in a JAR archive.
  * @author jamieh
- * @library ../lib
+ * @library /tools/lib ../lib
  * @modules jdk.javadoc/jdk.javadoc.internal.tool
- * @build JavadocTester
+ * @build JavadocTester toolbox.ToolBox toolbox.JarTask
  * @run main TestBadPackageFileInJar
  */
 
+import toolbox.JarTask;
+import toolbox.Task.Result;
+import toolbox.ToolBox;
+
+import java.io.IOException;
+import java.nio.file.Path;
+import java.nio.file.Paths;
+
 public class TestBadPackageFileInJar extends JavadocTester {
 
+    final ToolBox tb = new ToolBox();
+
     public static void main(String... args) throws Exception {
         TestBadPackageFileInJar tester = new TestBadPackageFileInJar();
         tester.runTests();
     }
 
     @Test
-    void test() {
+    void test() throws IOException {
+        // create the file
+        Path pkgDir = Paths.get("pkg");
+        tb.createDirectories(pkgDir);
+        Path pkgfilePath = pkgDir.resolve("package.html");
+        tb.writeFile(pkgfilePath, "<html>\n\n</html>");
+
+        // create the jar file
+        Path jarFile = Paths.get("badPackageFileInJar.jar");
+        JarTask jar = new JarTask(tb, "badPackageFileInJar.jar");
+        jar.files(pkgDir.toString()).run();
+
+        // clean up to prevent accidental pick up
+        tb.cleanDirectory(pkgDir);
+        tb.deleteFiles(pkgDir.toString());
+
         javadoc("-d", "out",
                 "-sourcepath", testSrc,
-                "-classpath",  testSrc("badPackageFileInJar.jar"),
+                "-classpath",  jarFile.toString(),
                 "pkg");
         checkExit(Exit.OK);
 
Binary file test/langtools/jdk/javadoc/doclet/testBadPackageFileInJar/badPackageFileInJar.jar has changed
--- a/test/langtools/tools/javac/T5090006/AssertionFailureTest.java	Fri Dec 08 09:40:14 2017 +0800
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,73 +0,0 @@
-/*
- * Copyright (c) 2013, 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 5090006
- * @summary javac fails with assertion error
- * @library /tools/lib
- * @modules jdk.compiler/com.sun.tools.javac.api
- *          jdk.compiler/com.sun.tools.javac.main
- *          jdk.jdeps/com.sun.tools.javap
- * @build toolbox.ToolBox toolbox.JavacTask
- * @run main AssertionFailureTest
- */
-
-import java.io.File;
-import java.nio.file.Paths;
-
-import toolbox.JavacTask;
-import toolbox.ToolBox;
-
-// Original test: test/tools/javac/T5090006/compiler.sh
-public class AssertionFailureTest {
-
-    private static final String testSrc =
-        "import stub_tie_gen.wsdl_hello_lit.client.*;\n" +
-        "import junit.framework.*;\n" +
-        "import testutil.ClientServerTestUtil;\n" +
-        "\n" +
-        "public class Test {\n" +
-        "\n" +
-        "    void getStub() throws Exception {\n" +
-        "        Hello_PortType_Stub x = null;\n" +
-        "        new ClientServerTestUtil().setTransport(x, null, null, null);\n" +
-        "    }\n" +
-        "\n" +
-        "    public static void main(String[] args) {\n" +
-        "        System.out.println(\"FISK\");\n" +
-        "    }\n" +
-        "}";
-
-    public static void main(String args[]) throws Exception {
-        ToolBox tb = new ToolBox();
-        String classpath = Paths.get(tb.testSrc, "broken.jar")
-                + File.pathSeparator
-                + ".";
-        new JavacTask(tb)
-                .classpath(classpath)
-                .sources(testSrc)
-                .run();
-    }
-
-}
Binary file test/langtools/tools/javac/T5090006/broken.jar has changed