0N/A/*
941N/A * Copyright (c) 2003, 2011, Oracle and/or its affiliates. All rights reserved.
0N/A * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
0N/A *
0N/A * This code is free software; you can redistribute it and/or modify it
0N/A * under the terms of the GNU General Public License version 2 only, as
0N/A * published by the Free Software Foundation.
0N/A *
0N/A * This code is distributed in the hope that it will be useful, but WITHOUT
0N/A * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
0N/A * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
0N/A * version 2 for more details (a copy is included in the LICENSE file that
0N/A * accompanied this code).
0N/A *
0N/A * You should have received a copy of the GNU General Public License version
0N/A * 2 along with this work; if not, write to the Free Software Foundation,
0N/A * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
0N/A *
553N/A * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
553N/A * or visit www.oracle.com if you need additional information or have any
553N/A * questions.
0N/A */
0N/A
0N/A/*
0N/A * @test
957N/A * @bug 4789689 4905985 4927164 4827184 4993906 5004549 7025314 7010344
0N/A * @summary Run Javadoc on a set of source files that demonstrate new
0N/A * language features. Check the output to ensure that the new
0N/A * language features are properly documented.
0N/A * @author jamieh
0N/A * @library ../lib/
957N/A * @build JavadocTester TestNewLanguageFeatures
0N/A * @run main TestNewLanguageFeatures
0N/A */
0N/A
0N/Apublic class TestNewLanguageFeatures extends JavadocTester {
0N/A
0N/A //Test information.
0N/A private static final String BUG_ID = "4789689-4905985-4927164-4827184-4993906";
0N/A
0N/A //Javadoc arguments.
0N/A private static final String[] ARGS = new String[] {
0N/A "-d", BUG_ID, "-use", "-source", "1.5", "-sourcepath", SRC_DIR, "pkg", "pkg1", "pkg2"
0N/A };
0N/A
0N/A //Input for string search tests.
0N/A private static final String[][] TEST =
0N/A {
0N/A //=================================
0N/A // ENUM TESTING
0N/A //=================================
0N/A //Make sure enum header is correct.
765N/A {BUG_ID + FS + "pkg" + FS + "Coin.html", "Enum Coin</h2>"},
0N/A //Make sure enum signature is correct.
957N/A {BUG_ID + FS + "pkg" + FS + "Coin.html", "<pre>public enum " +
957N/A "<span class=\"strong\">Coin</span>" + NL +
957N/A "extends java.lang.Enum&lt;<a href=\"../pkg/Coin.html\" " +
957N/A "title=\"enum in pkg\">Coin</a>&gt;</pre>"
0N/A },
0N/A //Check for enum constant section
765N/A {BUG_ID + FS + "pkg" + FS + "Coin.html", "<caption><span>Enum Constants" +
765N/A "</span><span class=\"tabEnd\">&nbsp;</span></caption>"},
0N/A //Detail for enum constant
0N/A {BUG_ID + FS + "pkg" + FS + "Coin.html",
765N/A "<strong><a href=\"../pkg/Coin.html#Dime\">Dime</a></strong>"},
0N/A //Automatically insert documentation for values() and valueOf().
0N/A {BUG_ID + FS + "pkg" + FS + "Coin.html",
0N/A "Returns an array containing the constants of this enum type,"},
0N/A {BUG_ID + FS + "pkg" + FS + "Coin.html",
0N/A "Returns the enum constant of this type with the specified name"},
0N/A {BUG_ID + FS + "pkg" + FS + "Coin.html", "for (Coin c : Coin.values())"},
0N/A {BUG_ID + FS + "pkg" + FS + "Coin.html", "Overloaded valueOf() method has correct documentation."},
0N/A {BUG_ID + FS + "pkg" + FS + "Coin.html", "Overloaded values method has correct documentation."},
0N/A
0N/A //=================================
0N/A // TYPE PARAMETER TESTING
0N/A //=================================
0N/A //Make sure the header is correct.
0N/A {BUG_ID + FS + "pkg" + FS + "TypeParameters.html",
765N/A "Class TypeParameters&lt;E&gt;</h2>"},
0N/A //Check class type parameters section.
0N/A {BUG_ID + FS + "pkg" + FS + "TypeParameters.html",
765N/A "<dt><span class=\"strong\">Type Parameters:</span></dt><dd><code>E</code> - " +
0N/A "the type parameter for this class."},
0N/A //Type parameters in @see/@link
0N/A {BUG_ID + FS + "pkg" + FS + "TypeParameters.html",
765N/A "<dl><dt><span class=\"strong\">See Also:</span></dt><dd>" +
765N/A "<a href=\"../pkg/TypeParameters.html\" title=\"class in pkg\">" +
765N/A "<code>TypeParameters</code></a></dd></dl>"},
0N/A //Method that uses class type parameter.
0N/A {BUG_ID + FS + "pkg" + FS + "TypeParameters.html",
765N/A "(<a href=\"../pkg/TypeParameters.html\" title=\"type " +
765N/A "parameter in TypeParameters\">E</a>&nbsp;param)"},
0N/A //Method type parameter section.
0N/A {BUG_ID + FS + "pkg" + FS + "TypeParameters.html",
765N/A "<span class=\"strong\">Type Parameters:</span></dt><dd><code>T</code> - This is the first " +
765N/A "type parameter.</dd><dd><code>V</code> - This is the second type " +
0N/A "parameter."},
0N/A //Signature of method with type parameters
0N/A {BUG_ID + FS + "pkg" + FS + "TypeParameters.html",
765N/A "public&nbsp;&lt;T extends java.util.List,V&gt;&nbsp;" +
765N/A "java.lang.String[]&nbsp;methodThatHasTypeParameters"},
0N/A //Wildcard testing.
0N/A {BUG_ID + FS + "pkg" + FS + "Wildcards.html",
765N/A "<a href=\"../pkg/TypeParameters.html\" title=\"class in pkg\">" +
765N/A "TypeParameters</a>&lt;? super java.lang.String&gt;&nbsp;a"},
0N/A {BUG_ID + FS + "pkg" + FS + "Wildcards.html",
765N/A "<a href=\"../pkg/TypeParameters.html\" title=\"class in pkg\">" +
765N/A "TypeParameters</a>&lt;? extends java.lang.StringBuffer&gt;&nbsp;b"},
0N/A {BUG_ID + FS + "pkg" + FS + "Wildcards.html",
765N/A "<a href=\"../pkg/TypeParameters.html\" title=\"class in pkg\">" +
765N/A "TypeParameters</a>&nbsp;c"},
0N/A //Bad type parameter warnings.
0N/A {WARNING_OUTPUT, "warning - @param argument " +
0N/A "\"<BadClassTypeParam>\" is not a type parameter name."},
0N/A {WARNING_OUTPUT, "warning - @param argument " +
0N/A "\"<BadMethodTypeParam>\" is not a type parameter name."},
0N/A
0N/A //Signature of subclass that has type parameters.
0N/A {BUG_ID + FS + "pkg" + FS + "TypeParameterSubClass.html",
957N/A "<pre>public class <span class=\"strong\">TypeParameterSubClass&lt;T extends " +
957N/A "java.lang.String&gt;</span>" + NL + "extends " +
765N/A "<a href=\"../pkg/TypeParameterSuperClass.html\" title=\"class in pkg\">" +
765N/A "TypeParameterSuperClass</a>&lt;T&gt;</pre>"},
0N/A
0N/A //Interface generic parameter substitution
0N/A //Signature of subclass that has type parameters.
0N/A {BUG_ID + FS + "pkg" + FS + "TypeParameters.html",
765N/A "<dl>" + NL + "<dt>All Implemented Interfaces:</dt>" + NL +
765N/A "<dd><a href=\"../pkg/SubInterface.html\" title=\"interface in pkg\">" +
765N/A "SubInterface</a>&lt;E&gt;, <a href=\"../pkg/SuperInterface.html\" " +
765N/A "title=\"interface in pkg\">SuperInterface</a>&lt;E&gt;</dd>" + NL +
765N/A "</dl>"},
0N/A {BUG_ID + FS + "pkg" + FS + "SuperInterface.html",
765N/A "<dl>" + NL + "<dt>All Known Subinterfaces:</dt>" + NL +
765N/A "<dd><a href=\"../pkg/SubInterface.html\" title=\"interface in pkg\">" +
765N/A "SubInterface</a>&lt;V&gt;</dd>" + NL + "</dl>"},
0N/A {BUG_ID + FS + "pkg" + FS + "SubInterface.html",
765N/A "<dl>" + NL + "<dt>All Superinterfaces:</dt>" + NL +
765N/A "<dd><a href=\"../pkg/SuperInterface.html\" title=\"interface in pkg\">" +
765N/A "SuperInterface</a>&lt;V&gt;</dd>" + NL + "</dl>"},
0N/A
0N/A //=================================
0N/A // VAR ARG TESTING
0N/A //=================================
0N/A {BUG_ID + FS + "pkg" + FS + "VarArgs.html", "(int...&nbsp;i)"},
0N/A {BUG_ID + FS + "pkg" + FS + "VarArgs.html", "(int[][]...&nbsp;i)"},
0N/A {BUG_ID + FS + "pkg" + FS + "VarArgs.html", "(int[]...)"},
0N/A {BUG_ID + FS + "pkg" + FS + "VarArgs.html",
765N/A "<a href=\"../pkg/TypeParameters.html\" title=\"class in pkg\">" +
765N/A "TypeParameters</a>...&nbsp;t"},
0N/A
0N/A //=================================
0N/A // ANNOTATION TYPE TESTING
0N/A //=================================
0N/A //Make sure the summary links are correct.
0N/A {BUG_ID + FS + "pkg" + FS + "AnnotationType.html",
941N/A "<li>Summary:&nbsp;</li>" + NL +
765N/A "<li><a href=\"#annotation_type_required_element_summary\">" +
941N/A "Required</a>&nbsp;|&nbsp;</li>" + NL + "<li>" +
941N/A "<a href=\"#annotation_type_optional_element_summary\">Optional</a></li>"},
0N/A //Make sure the detail links are correct.
0N/A {BUG_ID + FS + "pkg" + FS + "AnnotationType.html",
941N/A "<li>Detail:&nbsp;</li>" + NL +
941N/A "<li><a href=\"#annotation_type_element_detail\">Element</a></li>"},
0N/A //Make sure the heading is correct.
0N/A {BUG_ID + FS + "pkg" + FS + "AnnotationType.html",
765N/A "Annotation Type AnnotationType</h2>"},
0N/A //Make sure the signature is correct.
0N/A {BUG_ID + FS + "pkg" + FS + "AnnotationType.html",
957N/A "public @interface <span class=\"strong\">AnnotationType</span>"},
0N/A //Make sure member summary headings are correct.
0N/A {BUG_ID + FS + "pkg" + FS + "AnnotationType.html",
765N/A "<h3>Required Element Summary</h3>"},
0N/A {BUG_ID + FS + "pkg" + FS + "AnnotationType.html",
765N/A "<h3>Optional Element Summary</h3>"},
0N/A //Make sure element detail heading is correct
0N/A {BUG_ID + FS + "pkg" + FS + "AnnotationType.html",
0N/A "Element Detail"},
0N/A //Make sure default annotation type value is printed when necessary.
0N/A {BUG_ID + FS + "pkg" + FS + "AnnotationType.html",
765N/A "<dl>" + NL + "<dt>Default:</dt>" + NL + "<dd>\"unknown\"</dd>" + NL +
765N/A "</dl>"},
0N/A
0N/A //=================================
0N/A // ANNOTATION TYPE USAGE TESTING
0N/A //=================================
0N/A
0N/A //PACKAGE
0N/A {BUG_ID + FS + "pkg" + FS + "package-summary.html",
765N/A "<a href=\"../pkg/AnnotationType.html\" title=\"annotation in pkg\">@AnnotationType</a>(<a href=\"../pkg/AnnotationType.html#optional()\">optional</a>=\"Package Annotation\"," + NL +
765N/A " <a href=\"../pkg/AnnotationType.html#required()\">required</a>=1994)"},
0N/A
0N/A //CLASS
0N/A {BUG_ID + FS + "pkg" + FS + "AnnotationTypeUsage.html",
765N/A "<pre><a href=\"../pkg/AnnotationType.html\" " +
765N/A "title=\"annotation in pkg\">@AnnotationType</a>(" +
765N/A "<a href=\"../pkg/AnnotationType.html#optional()\">optional</a>" +
765N/A "=\"Class Annotation\"," + NL +
765N/A " <a href=\"../pkg/AnnotationType.html#required()\">" +
957N/A "required</a>=1994)" + NL + "public class <span class=\"strong\">" +
957N/A "AnnotationTypeUsage</span>" + NL + "extends java.lang.Object</pre>"},
0N/A
0N/A //FIELD
0N/A {BUG_ID + FS + "pkg" + FS + "AnnotationTypeUsage.html",
765N/A "<pre><a href=\"../pkg/AnnotationType.html\" " +
765N/A "title=\"annotation in pkg\">@AnnotationType</a>(" +
765N/A "<a href=\"../pkg/AnnotationType.html#optional()\">optional</a>" +
765N/A "=\"Field Annotation\"," + NL +
765N/A " <a href=\"../pkg/AnnotationType.html#required()\">" +
765N/A "required</a>=1994)" + NL + "public&nbsp;int field</pre>"},
0N/A
0N/A //CONSTRUCTOR
0N/A {BUG_ID + FS + "pkg" + FS + "AnnotationTypeUsage.html",
765N/A "<pre><a href=\"../pkg/AnnotationType.html\" " +
765N/A "title=\"annotation in pkg\">@AnnotationType</a>(" +
765N/A "<a href=\"../pkg/AnnotationType.html#optional()\">optional</a>" +
765N/A "=\"Constructor Annotation\"," + NL +
765N/A " <a href=\"../pkg/AnnotationType.html#required()\">" +
765N/A "required</a>=1994)" + NL + "public&nbsp;AnnotationTypeUsage()</pre>"},
0N/A
0N/A //METHOD
0N/A {BUG_ID + FS + "pkg" + FS + "AnnotationTypeUsage.html",
765N/A "<pre><a href=\"../pkg/AnnotationType.html\" " +
765N/A "title=\"annotation in pkg\">@AnnotationType</a>(" +
765N/A "<a href=\"../pkg/AnnotationType.html#optional()\">optional</a>" +
765N/A "=\"Method Annotation\"," + NL +
765N/A " <a href=\"../pkg/AnnotationType.html#required()\">" +
765N/A "required</a>=1994)" + NL + "public&nbsp;void&nbsp;method()</pre>"},
0N/A
0N/A //METHOD PARAMS
0N/A {BUG_ID + FS + "pkg" + FS + "AnnotationTypeUsage.html",
765N/A "<pre>public&nbsp;void&nbsp;methodWithParams(" +
765N/A "<a href=\"../pkg/AnnotationType.html\" title=\"annotation in pkg\">" +
765N/A "@AnnotationType</a>(<a href=\"../pkg/AnnotationType.html#optional()\">" +
765N/A "optional</a>=\"Parameter Annotation\",<a " +
765N/A "href=\"../pkg/AnnotationType.html#required()\">required</a>=1994)" + NL +
765N/A " int&nbsp;documented," + NL +
765N/A " int&nbsp;undocmented)</pre>"},
0N/A
0N/A //CONSTRUCTOR PARAMS
0N/A {BUG_ID + FS + "pkg" + FS + "AnnotationTypeUsage.html",
765N/A "<pre>public&nbsp;AnnotationTypeUsage(<a " +
765N/A "href=\"../pkg/AnnotationType.html\" title=\"annotation in pkg\">" +
765N/A "@AnnotationType</a>(<a href=\"../pkg/AnnotationType.html#optional()\">" +
765N/A "optional</a>=\"Constructor Param Annotation\",<a " +
765N/A "href=\"../pkg/AnnotationType.html#required()\">required</a>=1994)" + NL +
765N/A " int&nbsp;documented," + NL +
765N/A " int&nbsp;undocmented)</pre>"},
0N/A
0N/A //=================================
0N/A // ANNOTATION TYPE USAGE TESTING (All Different Types).
0N/A //=================================
0N/A
0N/A //Integer
0N/A {BUG_ID + FS + "pkg1" + FS + "B.html",
765N/A "<a href=\"../pkg1/A.html#d()\">d</a>=3.14,"},
0N/A
0N/A //Double
0N/A {BUG_ID + FS + "pkg1" + FS + "B.html",
765N/A "<a href=\"../pkg1/A.html#d()\">d</a>=3.14,"},
0N/A
0N/A //Boolean
0N/A {BUG_ID + FS + "pkg1" + FS + "B.html",
765N/A "<a href=\"../pkg1/A.html#b()\">b</a>=true,"},
0N/A
0N/A //String
0N/A {BUG_ID + FS + "pkg1" + FS + "B.html",
765N/A "<a href=\"../pkg1/A.html#s()\">s</a>=\"sigh\","},
0N/A
0N/A //Class
0N/A {BUG_ID + FS + "pkg1" + FS + "B.html",
765N/A "<a href=\"../pkg1/A.html#c()\">c</a>=<a href=\"../pkg2/Foo.html\" title=\"class in pkg2\">Foo.class</a>,"},
0N/A
0N/A //Bounded Class
0N/A {BUG_ID + FS + "pkg1" + FS + "B.html",
765N/A "<a href=\"../pkg1/A.html#w()\">w</a>=<a href=\"../pkg/TypeParameterSubClass.html\" title=\"class in pkg\">TypeParameterSubClass.class</a>,"},
0N/A
0N/A //Enum
0N/A {BUG_ID + FS + "pkg1" + FS + "B.html",
765N/A "<a href=\"../pkg1/A.html#e()\">e</a>=<a href=\"../pkg/Coin.html#Penny\">Penny</a>,"},
0N/A
0N/A //Annotation Type
0N/A {BUG_ID + FS + "pkg1" + FS + "B.html",
765N/A "<a href=\"../pkg1/A.html#a()\">a</a>=<a href=\"../pkg/AnnotationType.html\" title=\"annotation in pkg\">@AnnotationType</a>(<a href=\"../pkg/AnnotationType.html#optional()\">optional</a>=\"foo\",<a href=\"../pkg/AnnotationType.html#required()\">required</a>=1994),"},
0N/A
0N/A //String Array
0N/A {BUG_ID + FS + "pkg1" + FS + "B.html",
765N/A "<a href=\"../pkg1/A.html#sa()\">sa</a>={\"up\",\"down\"},"},
0N/A
0N/A //Primitive
0N/A {BUG_ID + FS + "pkg1" + FS + "B.html",
765N/A "<a href=\"../pkg1/A.html#primitiveClassTest()\">primitiveClassTest</a>=boolean.class,"},
0N/A
0N/A //XXX: Add array test case after this if fixed:
0N/A //5020899: Incorrect internal representation of class-valued annotation elements
0N/A
0N/A //Make sure that annotations are surrounded by <pre> and </pre>
0N/A {BUG_ID + FS + "pkg1" + FS + "B.html",
765N/A "<pre><a href=\"../pkg1/A.html\" title=\"annotation in pkg1\">@A</a>"},
0N/A {BUG_ID + FS + "pkg1" + FS + "B.html",
957N/A "public interface <span class=\"strong\">B</span></pre>"},
0N/A
0N/A
0N/A //==============================================================
0N/A // Handle multiple bounds.
0N/A //==============================================================
0N/A {BUG_ID + FS + "pkg" + FS + "MultiTypeParameters.html",
765N/A "public&nbsp;&lt;T extends java.lang.Number & java.lang.Runnable&gt;&nbsp;T&nbsp;foo(T&nbsp;t)"},
0N/A
0N/A //==============================================================
0N/A // Test Class-Use Documenation for Type Parameters.
0N/A //==============================================================
0N/A
0N/A //ClassUseTest1: <T extends Foo & Foo2>
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo.html",
765N/A "<caption><span>Classes in <a href=\"../../pkg2/" +
765N/A "package-summary.html\">pkg2</a> with type parameters of " +
765N/A "type <a href=\"../../pkg2/Foo.html\" title=\"class in pkg2\">" +
765N/A "Foo</a></span><span class=\"tabEnd\">&nbsp;</span></caption>"
0N/A },
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo.html",
957N/A "<td class=\"colLast\"><code><strong><a href=\"../../pkg2/ClassUseTest1.html\" " +
957N/A "title=\"class in pkg2\">ClassUseTest1</a>&lt;T extends " +
957N/A "<a href=\"../../pkg2/Foo.html\" title=\"class in pkg2\">Foo" +
957N/A "</a> & <a href=\"../../pkg2/Foo2.html\" title=\"interface in pkg2\">" +
957N/A "Foo2</a>&gt;</strong></code>&nbsp;</td>"
765N/A },
765N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo.html",
765N/A "<caption><span>Methods in <a href=\"../../pkg2/" +
765N/A "package-summary.html\">pkg2</a> with type parameters of " +
765N/A "type <a href=\"../../pkg2/Foo.html\" title=\"class in " +
765N/A "pkg2\">Foo</a></span><span class=\"tabEnd\">&nbsp;</span></caption>"
0N/A },
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo.html",
765N/A "<td class=\"colLast\"><span class=\"strong\">ClassUseTest1." +
765N/A "</span><code><strong><a href=\"../../pkg2/" +
765N/A "ClassUseTest1.html#method(T)\">method</a></strong>" +
765N/A "(T&nbsp;t)</code>&nbsp;</td>"
0N/A },
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo.html",
765N/A "<caption><span>Fields in <a href=\"../../pkg2/" +
765N/A "package-summary.html\">pkg2</a> with type parameters of " +
765N/A "type <a href=\"../../pkg2/Foo.html\" title=\"class in pkg2\">" +
765N/A "Foo</a></span><span class=\"tabEnd\">&nbsp;</span></caption>"
0N/A },
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo.html",
765N/A "td class=\"colFirst\"><code><a href=\"../../pkg2/" +
765N/A "ParamTest.html\" title=\"class in pkg2\">ParamTest</a>" +
765N/A "&lt;<a href=\"../../pkg2/Foo.html\" title=\"class in pkg2\"" +
765N/A ">Foo</a>&gt;</code></td>"
0N/A },
0N/A
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html",
765N/A "<caption><span>Fields in <a href=\"../../pkg2/" +
765N/A "package-summary.html\">pkg2</a> declared as <a href=\"../" +
765N/A "../pkg2/ParamTest.html\" title=\"class in pkg2\">ParamTest" +
765N/A "</a></span><span class=\"tabEnd\">&nbsp;</span></caption>"
0N/A },
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html",
765N/A "<td class=\"colFirst\"><code><a href=\"../../pkg2/" +
765N/A "ParamTest.html\" title=\"class in pkg2\">ParamTest</a>&lt;<a " +
765N/A "href=\"../../pkg2/Foo.html\" title=\"class in pkg2\">Foo</a" +
765N/A ">&gt;</code></td>"
0N/A },
0N/A
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo2.html",
765N/A "<caption><span>Classes in <a href=\"../../pkg2/" +
765N/A "package-summary.html\">pkg2</a> with type parameters of " +
765N/A "type <a href=\"../../pkg2/Foo2.html\" title=\"interface " +
765N/A "in pkg2\">Foo2</a></span><span class=\"tabEnd\">&nbsp;" +
765N/A "</span></caption>"
0N/A },
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo2.html",
957N/A "<td class=\"colLast\"><code><strong><a href=\"../../pkg2/ClassUseTest1.html\" " +
957N/A "title=\"class in pkg2\">ClassUseTest1</a>&lt;T extends " +
957N/A "<a href=\"../../pkg2/Foo.html\" title=\"class in pkg2\">Foo" +
957N/A "</a> & <a href=\"../../pkg2/Foo2.html\" title=\"interface in pkg2\">" +
957N/A "Foo2</a>&gt;</strong></code>&nbsp;</td>"
0N/A },
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo2.html",
765N/A "<caption><span>Methods in <a href=\"../../pkg2/" +
765N/A "package-summary.html\">pkg2</a> with type parameters of " +
765N/A "type <a href=\"../../pkg2/Foo2.html\" title=\"interface " +
765N/A "in pkg2\">Foo2</a></span><span class=\"tabEnd\">&nbsp;" +
765N/A "</span></caption>"
0N/A },
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo2.html",
765N/A "<td class=\"colLast\"><span class=\"strong\">" +
765N/A "ClassUseTest1.</span><code><strong><a href=\"../../" +
765N/A "pkg2/ClassUseTest1.html#method(T)\">method</a></strong>" +
765N/A "(T&nbsp;t)</code>&nbsp;</td>"
0N/A },
0N/A
0N/A //ClassUseTest2: <T extends ParamTest<Foo3>>
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html",
765N/A "<caption><span>Classes in <a href=\"../../pkg2/" +
765N/A "package-summary.html\">pkg2</a> with type parameters of " +
765N/A "type <a href=\"../../pkg2/ParamTest.html\" title=\"class " +
765N/A "in pkg2\">ParamTest</a></span><span class=\"tabEnd\">" +
765N/A "&nbsp;</span></caption>"
0N/A },
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html",
957N/A "<td class=\"colLast\"><code><strong><a href=\"../../pkg2/ClassUseTest2.html\" " +
957N/A "title=\"class in pkg2\">ClassUseTest2</a>&lt;T extends " +
957N/A "<a href=\"../../pkg2/ParamTest.html\" title=\"class in pkg2\">" +
957N/A "ParamTest</a>&lt;<a href=\"../../pkg2/Foo3.html\" title=\"class in pkg2\">" +
957N/A "Foo3</a>&gt;&gt;</strong></code>&nbsp;</td>"
0N/A },
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html",
765N/A "<caption><span>Methods in <a href=\"../../pkg2/" +
765N/A "package-summary.html\">pkg2</a> with type parameters of " +
765N/A "type <a href=\"../../pkg2/ParamTest.html\" title=\"class " +
765N/A "in pkg2\">ParamTest</a></span><span class=\"tabEnd\">" +
765N/A "&nbsp;</span></caption>"
765N/A },
765N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html",
765N/A "<td class=\"colLast\"><span class=\"strong\">ClassUseTest2." +
765N/A "</span><code><strong><a href=\"../../pkg2/" +
765N/A "ClassUseTest2.html#method(T)\">method</a></strong>" +
765N/A "(T&nbsp;t)</code>&nbsp;</td>"
0N/A },
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html",
765N/A "<caption><span>Fields in <a href=\"../../pkg2/" +
765N/A "package-summary.html\">pkg2</a> declared as <a href=\"../" +
765N/A "../pkg2/ParamTest.html\" title=\"class in pkg2\">ParamTest" +
765N/A "</a></span><span class=\"tabEnd\">&nbsp;</span></caption>"
0N/A },
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html",
765N/A "<td class=\"colFirst\"><code><a href=\"../../pkg2/" +
765N/A "ParamTest.html\" title=\"class in pkg2\">ParamTest</a>" +
765N/A "&lt;<a href=\"../../pkg2/Foo.html\" title=\"class in pkg2\">" +
765N/A "Foo</a>&gt;</code></td>"
0N/A },
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html",
765N/A "<caption><span>Methods in <a href=\"../../pkg2/" +
765N/A "package-summary.html\">pkg2</a> with type parameters of " +
765N/A "type <a href=\"../../pkg2/ParamTest.html\" title=\"class " +
765N/A "in pkg2\">ParamTest</a></span><span class=\"tabEnd\">" +
765N/A "&nbsp;</span></caption>"
0N/A },
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest.html",
765N/A "<td class=\"colFirst\"><code>&lt;T extends <a href=\"../" +
765N/A "../pkg2/ParamTest.html\" title=\"class in pkg2\">ParamTest" +
765N/A "</a>&lt;<a href=\"../../pkg2/Foo3.html\" title=\"class in " +
765N/A "pkg2\">Foo3</a>&gt;&gt;&nbsp;<br><a href=\"../../pkg2/" +
765N/A "ParamTest.html\" title=\"class in pkg2\">ParamTest</a>" +
765N/A "&lt;<a href=\"../../pkg2/Foo3.html\" title=\"class in " +
765N/A "pkg2\">Foo3</a>&gt;</code></td>"
0N/A },
0N/A
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo3.html",
765N/A "<caption><span>Classes in <a href=\"../../pkg2/" +
765N/A "package-summary.html\">pkg2</a> with type parameters of " +
765N/A "type <a href=\"../../pkg2/Foo3.html\" title=\"class in pkg2\">" +
765N/A "Foo3</a></span><span class=\"tabEnd\">&nbsp;</span></caption>"
0N/A },
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo3.html",
957N/A "<td class=\"colLast\"><code><strong><a href=\"../../pkg2/ClassUseTest2.html\" " +
957N/A "title=\"class in pkg2\">ClassUseTest2</a>&lt;T extends " +
957N/A "<a href=\"../../pkg2/ParamTest.html\" title=\"class in pkg2\">" +
957N/A "ParamTest</a>&lt;<a href=\"../../pkg2/Foo3.html\" title=\"class in pkg2\">" +
957N/A "Foo3</a>&gt;&gt;</strong></code>&nbsp;</td>"
765N/A },
765N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo3.html",
765N/A "<caption><span>Methods in <a href=\"../../pkg2/" +
765N/A "package-summary.html\">pkg2</a> with type parameters of " +
765N/A "type <a href=\"../../pkg2/Foo3.html\" title=\"class in " +
765N/A "pkg2\">Foo3</a></span><span class=\"tabEnd\">&nbsp;" +
765N/A "</span></caption>"
0N/A },
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo3.html",
765N/A "<td class=\"colLast\"><span class=\"strong\">ClassUseTest2." +
765N/A "</span><code><strong><a href=\"../../pkg2/" +
765N/A "ClassUseTest2.html#method(T)\">method</a></strong>" +
765N/A "(T&nbsp;t)</code>&nbsp;</td>"
0N/A },
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo3.html",
765N/A "<caption><span>Methods in <a href=\"../../pkg2/" +
765N/A "package-summary.html\">pkg2</a> that return types with " +
765N/A "arguments of type <a href=\"../../pkg2/Foo3.html\" title" +
765N/A "=\"class in pkg2\">Foo3</a></span><span class=\"tabEnd\">" +
765N/A "&nbsp;</span></caption>"
0N/A },
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo3.html",
765N/A "<td class=\"colFirst\"><code>&lt;T extends <a href=\"../../" +
765N/A "pkg2/ParamTest.html\" title=\"class in pkg2\">ParamTest</a>&lt;" +
765N/A "<a href=\"../../pkg2/Foo3.html\" title=\"class in pkg2\">Foo3" +
765N/A "</a>&gt;&gt;&nbsp;<br><a href=\"../../pkg2/ParamTest.html\" " +
765N/A "title=\"class in pkg2\">ParamTest</a>&lt;<a href=\"../../pkg2/" +
765N/A "Foo3.html\" title=\"class in pkg2\">Foo3</a>&gt;</code></td>"
0N/A },
0N/A
0N/A //ClassUseTest3: <T extends ParamTest2<List<? extends Foo4>>>
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest2.html",
765N/A "<caption><span>Classes in <a href=\"../../pkg2/" +
765N/A "package-summary.html\">pkg2</a> with type parameters of " +
765N/A "type <a href=\"../../pkg2/ParamTest2.html\" title=\"class " +
765N/A "in pkg2\">ParamTest2</a></span><span class=\"tabEnd\">" +
765N/A "&nbsp;</span></caption>"
0N/A },
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest2.html",
957N/A "<td class=\"colLast\"><code><strong><a href=\"../../pkg2/ClassUseTest3.html\" " +
957N/A "title=\"class in pkg2\">ClassUseTest3</a>&lt;T extends " +
957N/A "<a href=\"../../pkg2/ParamTest2.html\" title=\"class in pkg2\">" +
957N/A "ParamTest2</a>&lt;java.util.List&lt;? extends " +
957N/A "<a href=\"../../pkg2/Foo4.html\" title=\"class in pkg2\">" +
957N/A "Foo4</a>&gt;&gt;&gt;</strong></code>&nbsp;</td>"
0N/A },
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest2.html",
765N/A "<caption><span>Methods in <a href=\"../../pkg2/" +
765N/A "package-summary.html\">pkg2</a> with type parameters of " +
765N/A "type <a href=\"../../pkg2/ParamTest2.html\" title=\"class " +
765N/A "in pkg2\">ParamTest2</a></span><span class=\"tabEnd\">" +
765N/A "&nbsp;</span></caption>"
0N/A },
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest2.html",
765N/A "<td class=\"colLast\"><span class=\"strong\">ClassUseTest3" +
765N/A ".</span><code><strong><a href=\"../../pkg2/ClassUseTest3." +
765N/A "html#method(T)\">method</a></strong>(T&nbsp;t)</code>&nbsp;</td>"
0N/A },
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "ParamTest2.html",
765N/A "<td class=\"colFirst\"><code>&lt;T extends <a href=\"../" +
765N/A "../pkg2/ParamTest2.html\" title=\"class in pkg2\">" +
765N/A "ParamTest2</a>&lt;java.util.List&lt;? extends <a href=\".." +
765N/A "/../pkg2/Foo4.html\" title=\"class in pkg2\">Foo4</a>&gt;" +
765N/A "&gt;&gt;&nbsp;<br><a href=\"../../pkg2/ParamTest2.html\" " +
765N/A "title=\"class in pkg2\">ParamTest2</a>&lt;java.util.List" +
765N/A "&lt;? extends <a href=\"../../pkg2/Foo4.html\" title=\"" +
765N/A "class in pkg2\">Foo4</a>&gt;&gt;</code></td>"
0N/A },
0N/A
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo4.html",
765N/A "<caption><span>Classes in <a href=\"../../pkg2/" +
765N/A "package-summary.html\">pkg2</a> with type parameters of " +
765N/A "type <a href=\"../../pkg2/Foo4.html\" title=\"class in " +
765N/A "pkg2\">Foo4</a></span><span class=\"tabEnd\">&nbsp;" +
765N/A "</span></caption>"
0N/A },
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo4.html",
957N/A "<td class=\"colLast\"><code><strong><a href=\"../../pkg2/ClassUseTest3.html\" " +
957N/A "title=\"class in pkg2\">ClassUseTest3</a>&lt;T extends " +
957N/A "<a href=\"../../pkg2/ParamTest2.html\" title=\"class in pkg2\">" +
957N/A "ParamTest2</a>&lt;java.util.List&lt;? extends " +
957N/A "<a href=\"../../pkg2/Foo4.html\" title=\"class in pkg2\">" +
957N/A "Foo4</a>&gt;&gt;&gt;</strong></code>&nbsp;</td>"
765N/A },
765N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo4.html",
765N/A "<caption><span>Methods in <a href=\"../../pkg2/" +
765N/A "package-summary.html\">pkg2</a> with type parameters of " +
765N/A "type <a href=\"../../pkg2/Foo4.html\" title=\"class in " +
765N/A "pkg2\">Foo4</a></span><span class=\"tabEnd\">&nbsp;</span></caption>"
0N/A },
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo4.html",
765N/A "<td class=\"colLast\"><span class=\"strong\">ClassUseTest3." +
765N/A "</span><code><strong><a href=\"../../pkg2/ClassUseTest3." +
765N/A "html#method(T)\">method</a></strong>(T&nbsp;t)</code>" +
765N/A "&nbsp;</td>"
0N/A },
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo4.html",
765N/A "<caption><span>Methods in <a href=\"../../pkg2/" +
765N/A "package-summary.html\">pkg2</a> that return types with " +
765N/A "arguments of type <a href=\"../../pkg2/Foo4.html\" " +
765N/A "title=\"class in pkg2\">Foo4</a></span><span class=\"" +
765N/A "tabEnd\">&nbsp;</span></caption>"
0N/A },
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo4.html",
765N/A "<td class=\"colFirst\"><code>&lt;T extends <a href=\"../" +
765N/A "../pkg2/ParamTest2.html\" title=\"class in pkg2\">" +
765N/A "ParamTest2</a>&lt;java.util.List&lt;? extends <a href=\".." +
765N/A "/../pkg2/Foo4.html\" title=\"class in pkg2\">Foo4</a>&gt;" +
765N/A "&gt;&gt;&nbsp;<br><a href=\"../../pkg2/ParamTest2.html\" " +
765N/A "title=\"class in pkg2\">ParamTest2</a>&lt;java.util.List" +
765N/A "&lt;? extends <a href=\"../../pkg2/Foo4.html\" title=\"" +
765N/A "class in pkg2\">Foo4</a>&gt;&gt;</code></td>"
0N/A },
0N/A
0N/A //Type parameters in constructor and method args
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo4.html",
765N/A "<caption><span>Method parameters in <a href=\"../../pkg2/" +
765N/A "package-summary.html\">pkg2</a> with type arguments of " +
765N/A "type <a href=\"../../pkg2/Foo4.html\" title=\"class in " +
765N/A "pkg2\">Foo4</a></span><span class=\"tabEnd\">&nbsp;" +
765N/A "</span></caption>" + NL + "<tr>" + NL +
765N/A "<th class=\"colFirst\" scope=\"col\">Modifier and Type</th>" + NL +
765N/A "<th class=\"colLast\" scope=\"col\">Method and Description</th>" + NL +
765N/A "</tr>" + NL + "<tbody>" + NL + "<tr class=\"altColor\">" + NL +
765N/A "<td class=\"colFirst\"><code>void</code></td>" + NL +
765N/A "<td class=\"colLast\"><span class=\"strong\">ClassUseTest3." +
765N/A "</span><code><strong><a href=\"../../pkg2/ClassUseTest3." +
765N/A "html#method(java.util.Set)\">method</a></strong>(java." +
765N/A "util.Set&lt;<a href=\"../../pkg2/Foo4.html\" title=\"" +
765N/A "class in pkg2\">Foo4</a>&gt;&nbsp;p)</code>&nbsp;</td>" + NL +
765N/A "</tr>" + NL + "</tbody>"
0N/A },
0N/A {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "Foo4.html",
765N/A "<caption><span>Constructor parameters in <a href=\"../../" +
765N/A "pkg2/package-summary.html\">pkg2</a> with type arguments " +
765N/A "of type <a href=\"../../pkg2/Foo4.html\" title=\"class in " +
765N/A "pkg2\">Foo4</a></span><span class=\"tabEnd\">&nbsp;" +
765N/A "</span></caption>"
0N/A },
0N/A
0N/A //=================================
0N/A // Annotatation Type Usage
0N/A //=================================
0N/A {BUG_ID + FS + "pkg" + FS + "class-use" + FS + "AnnotationType.html",
765N/A "<caption><span>Packages with annotations of type <a href=\"" +
765N/A "../../pkg/AnnotationType.html\" title=\"annotation in pkg\">" +
765N/A "AnnotationType</a></span><span class=\"tabEnd\">&nbsp;" +
765N/A "</span></caption>"
0N/A },
0N/A
0N/A {BUG_ID + FS + "pkg" + FS + "class-use" + FS + "AnnotationType.html",
765N/A "<caption><span>Classes in <a href=\"../../pkg/" +
765N/A "package-summary.html\">pkg</a> with annotations of type " +
765N/A "<a href=\"../../pkg/AnnotationType.html\" title=\"" +
765N/A "annotation in pkg\">AnnotationType</a></span><span class" +
765N/A "=\"tabEnd\">&nbsp;</span></caption>"
0N/A },
0N/A
0N/A {BUG_ID + FS + "pkg" + FS + "class-use" + FS + "AnnotationType.html",
765N/A "<caption><span>Fields in <a href=\"../../pkg/" +
765N/A "package-summary.html\">pkg</a> with annotations of type " +
765N/A "<a href=\"../../pkg/AnnotationType.html\" title=\"annotation " +
765N/A "in pkg\">AnnotationType</a></span><span class=\"tabEnd\">" +
765N/A "&nbsp;</span></caption>"
0N/A },
0N/A
0N/A {BUG_ID + FS + "pkg" + FS + "class-use" + FS + "AnnotationType.html",
765N/A "<caption><span>Methods in <a href=\"../../pkg/" +
765N/A "package-summary.html\">pkg</a> with annotations of type " +
765N/A "<a href=\"../../pkg/AnnotationType.html\" title=\"annotation " +
765N/A "in pkg\">AnnotationType</a></span><span class=\"tabEnd\">" +
765N/A "&nbsp;</span></caption>"
0N/A },
0N/A
0N/A {BUG_ID + FS + "pkg" + FS + "class-use" + FS + "AnnotationType.html",
765N/A "<caption><span>Method parameters in <a href=\"../../pkg/" +
765N/A "package-summary.html\">pkg</a> with annotations of type " +
765N/A "<a href=\"../../pkg/AnnotationType.html\" title=\"annotation " +
765N/A "in pkg\">AnnotationType</a></span><span class=\"tabEnd\">" +
765N/A "&nbsp;</span></caption>"
0N/A },
0N/A
0N/A {BUG_ID + FS + "pkg" + FS + "class-use" + FS + "AnnotationType.html",
765N/A "<caption><span>Constructors in <a href=\"../../pkg/" +
765N/A "package-summary.html\">pkg</a> with annotations of type " +
765N/A "<a href=\"../../pkg/AnnotationType.html\" title=\"annotation " +
765N/A "in pkg\">AnnotationType</a></span><span class=\"tabEnd\">" +
765N/A "&nbsp;</span></caption>"
0N/A },
0N/A
0N/A {BUG_ID + FS + "pkg" + FS + "class-use" + FS + "AnnotationType.html",
765N/A "<caption><span>Constructor parameters in <a href=\"../../" +
765N/A "pkg/package-summary.html\">pkg</a> with annotations of " +
765N/A "type <a href=\"../../pkg/AnnotationType.html\" title=\"" +
765N/A "annotation in pkg\">AnnotationType</a></span><span class=\"" +
765N/A "tabEnd\">&nbsp;</span></caption>"
0N/A },
0N/A
0N/A //=================================
0N/A // TYPE PARAMETER IN INDEX
0N/A //=================================
0N/A {BUG_ID + FS + "index-all.html",
765N/A "<span class=\"strong\"><a href=\"./pkg2/Foo.html#method(java.util.Vector)\">" +
765N/A "method(Vector&lt;Object&gt;)</a></span>"
0N/A },
0N/A //=================================
0N/A // TYPE PARAMETER IN INDEX
0N/A //=================================
0N/A {BUG_ID + FS + "index-all.html",
765N/A "<span class=\"strong\"><a href=\"./pkg2/Foo.html#method(java.util.Vector)\">" +
765N/A "method(Vector&lt;Object&gt;)</a></span>"
0N/A },
0N/A };
0N/A private static final String[][] NEGATED_TEST = {
0N/A //=================================
0N/A // ENUM TESTING
0N/A //=================================
0N/A //NO constructor section
765N/A {BUG_ID + FS + "pkg" + FS + "Coin.html", "<span class=\"strong\">Constructor Summary</span>"},
0N/A //=================================
0N/A // TYPE PARAMETER TESTING
0N/A //=================================
0N/A //No type parameters in class frame.
0N/A {BUG_ID + FS + "allclasses-frame.html",
765N/A "<a href=\"../pkg/TypeParameters.html\" title=\"class in pkg\">" +
765N/A "TypeParameters</a>&lt;<a href=\"../pkg/TypeParameters.html\" " +
765N/A "title=\"type parameter in TypeParameters\">E</a>&gt;"
0N/A },
0N/A
0N/A //==============================================================
0N/A // ANNOTATION TYPE USAGE TESTING (When @Documented is omitted)
0N/A //===============================================================
0N/A
0N/A //CLASS
0N/A {BUG_ID + FS + "pkg" + FS + "AnnotationTypeUsage.html",
765N/A "<a href=\"../pkg/AnnotationTypeUndocumented.html\" title=\"annotation in pkg\">@AnnotationTypeUndocumented</a>(<a href=\"../pkg/AnnotationType.html#optional\">optional</a>=\"Class Annotation\"," + NL +
765N/A " <a href=\"../pkg/AnnotationType.html#required\">required</a>=1994)" + NL +
765N/A "public class <strong>AnnotationTypeUsage</strong></dt><dt>extends java.lang.Object</dt>"},
0N/A
0N/A //FIELD
0N/A {BUG_ID + FS + "pkg" + FS + "AnnotationTypeUsage.html",
765N/A "<a href=\"../pkg/AnnotationTypeUndocumented.html\" title=\"annotation in pkg\">@AnnotationTypeUndocumented</a>(<a href=\"../pkg/AnnotationType.html#optional\">optional</a>=\"Field Annotation\"," + NL +
765N/A " <a href=\"../pkg/AnnotationType.html#required\">required</a>=1994)" + NL +
765N/A "public int <strong>field</strong>"},
0N/A
0N/A //CONSTRUCTOR
0N/A {BUG_ID + FS + "pkg" + FS + "AnnotationTypeUsage.html",
765N/A "<a href=\"../pkg/AnnotationTypeUndocumented.html\" title=\"annotation in pkg\">@AnnotationTypeUndocumented</a>(<a href=\"../pkg/AnnotationType.html#optional\">optional</a>=\"Constructor Annotation\"," + NL +
765N/A " <a href=\"../pkg/AnnotationType.html#required\">required</a>=1994)" + NL +
765N/A "public <strong>AnnotationTypeUsage</strong>()"},
0N/A
0N/A //METHOD
0N/A {BUG_ID + FS + "pkg" + FS + "AnnotationTypeUsage.html",
765N/A "<a href=\"../pkg/AnnotationTypeUndocumented.html\" title=\"annotation in pkg\">@AnnotationTypeUndocumented</a>(<a href=\"../pkg/AnnotationType.html#optional\">optional</a>=\"Method Annotation\"," + NL +
765N/A " <a href=\"../pkg/AnnotationType.html#required\">required</a>=1994)" + NL +
765N/A "public void <strong>method</strong>()"},
0N/A
0N/A //=================================
0N/A // Make sure annotation types do not
0N/A // trigger this warning.
0N/A //=================================
0N/A {WARNING_OUTPUT,
0N/A "Internal error: package sets don't match: [] with: null"
0N/A },
0N/A };
0N/A
0N/A /**
0N/A * The entry point of the test.
0N/A * @param args the array of command line arguments.
0N/A */
0N/A public static void main(String[] args) {
0N/A TestNewLanguageFeatures tester = new TestNewLanguageFeatures();
0N/A run(tester, ARGS, TEST, NEGATED_TEST);
0N/A tester.printSummary();
0N/A }
0N/A
0N/A /**
0N/A * {@inheritDoc}
0N/A */
0N/A public String getBugId() {
0N/A return BUG_ID;
0N/A }
0N/A
0N/A /**
0N/A * {@inheritDoc}
0N/A */
0N/A public String getBugName() {
0N/A return getClass().getName();
0N/A }
0N/A}