--- a/langtools/test/com/sun/javadoc/testUseOption/TestUseOption.java Sun Jun 29 17:13:55 2014 -0700
+++ b/langtools/test/com/sun/javadoc/testUseOption/TestUseOption.java Fri Jul 11 06:52:04 2014 -0700
@@ -96,6 +96,30 @@
checkOutput("pkg1/class-use/UsedClass.html", false,
"methodInC1Protected"
);
+ checkOutput("pkg1/class-use/UsedInterface.html", true,
+ "<a href=\"../../pkg1/AnAbstract.html\" title=\"class in pkg1\">AnAbstract</a>"
+ );
+ checkOutput("pkg1/class-use/UsedInterface.html", true,
+ "../../pkg1/C10.html#withReturningTypeParameters--"
+ );
+ checkOutput("pkg1/class-use/UsedInterface.html", true,
+ "../../pkg1/C10.html#withTypeParametersOfType-java.lang.Class-"
+ );
+ checkOutput("pkg1/class-use/UsedInterface.html", true,
+ "\"../../pkg1/package-summary.html\">pkg1</a> that return " +
+ "<a href=\"../../pkg1/UsedInterface.html\" title=\"interface in pkg1\""
+ );
+ checkOutput("pkg1/class-use/UsedInterface.html", true,
+ "<a href=\"../../pkg1/C10.html#addAll-pkg1.UsedInterface...-\">addAll</a>"
+ );
+ checkOutput("pkg1/class-use/UsedInterface.html", true,
+ "<a href=\"../../pkg1/C10.html#create-pkg1.UsedInterfaceA-pkg1." +
+ "UsedInterface-java.lang.String-\">"
+ );
+ checkOutput("pkg1/class-use/UsedInterface.html", true,
+ "<a href=\"../../pkg1/C10.html#withTypeParametersOfType-java.lang.Class-\">" +
+ "withTypeParametersOfType</a>"
+ );
}
@Test
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/langtools/test/com/sun/javadoc/testUseOption/pkg1/AnAbstract.java Fri Jul 11 06:52:04 2014 -0700
@@ -0,0 +1,24 @@
+/*
+ * Copyright (c) 2014, 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.
+ */
+package pkg1;
+public abstract class AnAbstract implements UsedInterface {}
--- a/langtools/test/com/sun/javadoc/testUseOption/pkg1/C10.java Sun Jun 29 17:13:55 2014 -0700
+++ b/langtools/test/com/sun/javadoc/testUseOption/pkg1/C10.java Fri Jul 11 06:52:04 2014 -0700
@@ -23,6 +23,8 @@
package pkg1;
+import java.util.List;
+
/**
* An implementor
*
@@ -38,4 +40,49 @@
* Me too
*/
public void doNothingA() {}
+
+ /**
+ * returns a collection with type param
+ * @return something
+ */
+ public List<? extends UsedClass> foo(){return null;}
+
+ /**
+ * returns and takes type param variants
+ * @param <T> yeah
+ * @return returns a type param
+ */
+ public <T extends UsedInterface<? super T>> UsedInterfaceA<T> withTypeParametersOfType(Class<? extends UsedInterface> c){return null;}
+
+ /**
+ * returns a type param
+ * @param <T> a param
+ * @return something
+ */
+ public <T extends UsedInterface>T[] withReturningTypeParameters(){return null;}
+
+ /**
+ * a return a type parameter, as a static method
+ * @param <T> a type param
+ * @param enumType something
+ * @param name something
+ * @return a trype param
+ */
+ public static <T extends UsedInterface<T>> T withReturnVariant(Class<T> enumType, String name){return null;}
+
+ /**
+ * another variant of a method returning type parameters
+ * @param <T> something
+ * @param listenerInterface something
+ * @param target something
+ * @param action something
+ * @return a type param
+ */
+ public <T> T create(UsedInterfaceA<T> listenerInterface, UsedInterface target, String action){return null;}
+
+ /**
+ * input is an array
+ * @param elements a vararg
+ */
+ public void addAll(UsedInterface... elements) {}
}
--- a/langtools/test/com/sun/javadoc/testUseOption/pkg1/UsedInterface.java Sun Jun 29 17:13:55 2014 -0700
+++ b/langtools/test/com/sun/javadoc/testUseOption/pkg1/UsedInterface.java Fri Jul 11 06:52:04 2014 -0700
@@ -28,7 +28,7 @@
package pkg1;
-public interface UsedInterface {
+public interface UsedInterface<T> {
/**
* Does nothing
--- a/langtools/test/com/sun/javadoc/testUseOption/pkg1/UsedInterfaceA.java Sun Jun 29 17:13:55 2014 -0700
+++ b/langtools/test/com/sun/javadoc/testUseOption/pkg1/UsedInterfaceA.java Fri Jul 11 06:52:04 2014 -0700
@@ -28,7 +28,7 @@
package pkg1;
-public interface UsedInterfaceA {
+public interface UsedInterfaceA<T> {
/**
* Does nothing