test/java/lang/reflect/Method/GenericStringTest.java
Print this page
@@ -21,11 +21,11 @@
* questions.
*/
/*
* @test
- * @bug 5033583 6316717 6470106
+ * @bug 5033583 6316717 6470106 8004979
* @summary Check toGenericString() and toString() methods
* @author Joseph D. Darcy
*/
import java.lang.reflect.*;
@@ -37,10 +37,11 @@
int failures = 0;
List<Class<?>> classList = new LinkedList<Class<?>>();
classList.add(TestClass1.class);
classList.add(TestClass2.class);
classList.add(Roebling.class);
+ classList.add(TestInterface1.class);
for(Class<?> clazz: classList)
for(Method method: clazz.getDeclaredMethods()) {
ExpectedGenericString egs = method.getAnnotation(ExpectedGenericString.class);
@@ -127,10 +128,24 @@
@ExpectedString(
"void Roebling.varArg(java.lang.Object[])")
void varArg(Object ... arg) {}
}
+interface TestInterface1 {
+ @ExpectedGenericString(
+ "public default void TestInterface1.foo()")
+ @ExpectedString(
+ "public default void TestInterface1.foo()")
+ public default void foo(){;}
+
+ @ExpectedString(
+ "public default java.lang.Object TestInterface1.bar()")
+ @ExpectedGenericString(
+ "public default <A> A TestInterface1.bar()")
+ default <A> A bar(){return null;}
+}
+
@Retention(RetentionPolicy.RUNTIME)
@interface ExpectedGenericString {
String value();
}