Thu, 15 Jul 2010 16:31:02 +0100
6967002: JDK7 b99 javac compilation error (java.lang.AssertionError)
Summary: bug in JavacParser related to parsing of type annotations in varargs position
Reviewed-by: jjg
Contributed-by: mahmood@notnoop.com
1 /*
2 * Copyright (c) 2002, 2003, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation.
8 *
9 * This code is distributed in the hope that it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 * version 2 for more details (a copy is included in the LICENSE file that
13 * accompanied this code).
14 *
15 * You should have received a copy of the GNU General Public License version
16 * 2 along with this work; if not, write to the Free Software Foundation,
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 */
24 /*
25 * @test
26 * @bug 4492643 4689286
27 * @summary Test that a package page is properly generated when a .java file
28 * passed to Javadoc. Also test that the proper package links are generated
29 * when single or multiple packages are documented.
30 * @author jamieh
31 * @library ../lib/
32 * @build JavadocTester
33 * @build TestPackagePage
34 * @run main TestPackagePage
35 */
37 public class TestPackagePage extends JavadocTester {
39 private static final String BUG_ID = "4492643-4689286";
40 private static final String[][] TEST1 = {
41 {BUG_ID + "-1" + FS + "com" + FS + "pkg" + FS + "package-summary.html",
42 "This is a package page."
43 },
44 //With just one package, all general pages link to the single package page.
45 {BUG_ID + "-1" + FS + "com" + FS + "pkg" + FS + "C.html",
46 "<A HREF=\"../../com/pkg/package-summary.html\">" +
47 "<FONT CLASS=\"NavBarFont1\"><STRONG>Package</STRONG></FONT></A>"
48 },
49 {BUG_ID + "-1" + FS + "com" + FS + "pkg" + FS + "package-tree.html",
50 "<A HREF=\"../../com/pkg/package-summary.html\">" +
51 "<FONT CLASS=\"NavBarFont1\"><STRONG>Package</STRONG></FONT></A>"
52 },
53 {BUG_ID + "-1" + FS + "deprecated-list.html",
54 "<A HREF=\"com/pkg/package-summary.html\">" +
55 "<FONT CLASS=\"NavBarFont1\"><STRONG>Package</STRONG></FONT></A>"
56 },
57 {BUG_ID + "-1" + FS + "index-all.html",
58 "<A HREF=\"./com/pkg/package-summary.html\">" +
59 "<FONT CLASS=\"NavBarFont1\"><STRONG>Package</STRONG></FONT></A>"
60 },
61 {BUG_ID + "-1" + FS + "help-doc.html",
62 "<A HREF=\"com/pkg/package-summary.html\">" +
63 "<FONT CLASS=\"NavBarFont1\"><STRONG>Package</STRONG></FONT></A>"
64 },
65 };
67 private static final String[][] TEST2 = {
68 //With multiple packages, there is no package link in general pages.
69 {BUG_ID + "-2" + FS + "deprecated-list.html",
70 " <FONT CLASS=\"NavBarFont1\">Package</FONT> "
71 },
72 {BUG_ID + "-2" + FS + "index-all.html",
73 " <FONT CLASS=\"NavBarFont1\">Package</FONT> "
74 },
75 {BUG_ID + "-2" + FS + "help-doc.html",
76 " <FONT CLASS=\"NavBarFont1\">Package</FONT> "
77 },
78 };
80 private static final String[] ARGS1 =
81 new String[] {
82 "-d", BUG_ID + "-1", "-sourcepath", SRC_DIR,
83 SRC_DIR + FS + "com" + FS + "pkg" + FS + "C.java"
84 };
86 private static final String[] ARGS2 =
87 new String[] {
88 "-d", BUG_ID + "-2", "-sourcepath", SRC_DIR,
89 "com.pkg", "pkg2"
90 };
92 /**
93 * The entry point of the test.
94 * @param args the array of command line arguments.
95 */
96 public static void main(String[] args) {
97 TestPackagePage tester = new TestPackagePage();
98 run(tester, ARGS1, TEST1, NO_TEST);
99 run(tester, ARGS2, TEST2, NO_TEST);
100 tester.printSummary();
101 }
103 /**
104 * {@inheritDoc}
105 */
106 public String getBugId() {
107 return BUG_ID;
108 }
110 /**
111 * {@inheritDoc}
112 */
113 public String getBugName() {
114 return getClass().getName();
115 }
116 }