Polish "Polish GenericTypeResolver Javadoc"
See gh-31663
This commit is contained in:
@@ -72,6 +72,7 @@ class GenericTypeResolverTests {
|
||||
void methodReturnTypes() {
|
||||
assertThat(resolveReturnTypeArgument(findMethod(MyTypeWithMethods.class, "integer"), MyInterfaceType.class)).isEqualTo(Integer.class);
|
||||
assertThat(resolveReturnTypeArgument(findMethod(MyTypeWithMethods.class, "string"), MyInterfaceType.class)).isEqualTo(String.class);
|
||||
assertThat(resolveReturnTypeArgument(findMethod(MyTypeWithMethods.class, "character"), MyAbstractType.class)).isEqualTo(Character.class);
|
||||
assertThat(resolveReturnTypeArgument(findMethod(MyTypeWithMethods.class, "raw"), MyInterfaceType.class)).isNull();
|
||||
assertThat(resolveReturnTypeArgument(findMethod(MyTypeWithMethods.class, "object"), MyInterfaceType.class)).isNull();
|
||||
}
|
||||
@@ -137,6 +138,12 @@ class GenericTypeResolverTests {
|
||||
assertThat(x).isEqualTo(Long.class);
|
||||
}
|
||||
|
||||
@Test
|
||||
void resolveTypeArgumentsOfAbstractType() {
|
||||
Class<?>[] resolved = GenericTypeResolver.resolveTypeArguments(MyConcreteType.class, MyAbstractType.class);
|
||||
assertThat(resolved).containsExactly(Character.class);
|
||||
}
|
||||
|
||||
@Test // SPR-11030
|
||||
void getGenericsCannotBeResolved() throws Exception {
|
||||
Class<?>[] resolved = GenericTypeResolver.resolveTypeArguments(List.class, Iterable.class);
|
||||
@@ -240,6 +247,12 @@ class GenericTypeResolverTests {
|
||||
public class MyCollectionInterfaceType implements MyInterfaceType<Collection<String>> {
|
||||
}
|
||||
|
||||
public abstract class MyAbstractType<T> implements MyInterfaceType<T> {
|
||||
}
|
||||
|
||||
public class MyConcreteType extends MyAbstractType<Character> {
|
||||
}
|
||||
|
||||
public abstract class MySuperclassType<T> {
|
||||
|
||||
public void upperBound(List<? extends T> list) {
|
||||
@@ -274,6 +287,8 @@ class GenericTypeResolverTests {
|
||||
return null;
|
||||
}
|
||||
|
||||
public MyConcreteType character() { return null; }
|
||||
|
||||
public Object object() {
|
||||
return null;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user