|
|
|
|
@ -1427,6 +1427,23 @@ class ResolvableTypeTests {
@@ -1427,6 +1427,23 @@ class ResolvableTypeTests {
|
|
|
|
|
assertThat(repository3.isAssignableFromResolvedPart(repository1)).isFalse(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
void gh33535() throws Exception { |
|
|
|
|
ResolvableType repository1 = ResolvableType.forField(Fields.class.getField("stringRepository")); |
|
|
|
|
ResolvableType repository2 = ResolvableType.forField(Fields.class.getField("arrayRepository")); |
|
|
|
|
ResolvableType repository3 = ResolvableType.forMethodReturnType(Methods.class.getMethod("someRepository")); |
|
|
|
|
assertThat(repository1.hasUnresolvableGenerics()).isFalse(); |
|
|
|
|
assertThat(repository1.isAssignableFrom(repository3)).isFalse(); |
|
|
|
|
assertThat(repository1.isAssignableFromResolvedPart(repository3)).isTrue(); |
|
|
|
|
assertThat(repository3.isAssignableFrom(repository1)).isTrue(); |
|
|
|
|
assertThat(repository3.isAssignableFromResolvedPart(repository1)).isTrue(); |
|
|
|
|
assertThat(repository2.hasUnresolvableGenerics()).isFalse(); |
|
|
|
|
assertThat(repository2.isAssignableFrom(repository3)).isFalse(); |
|
|
|
|
assertThat(repository2.isAssignableFromResolvedPart(repository3)).isTrue(); |
|
|
|
|
assertThat(repository3.isAssignableFrom(repository2)).isTrue(); |
|
|
|
|
assertThat(repository3.isAssignableFromResolvedPart(repository2)).isTrue(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private ResolvableType testSerialization(ResolvableType type) throws Exception { |
|
|
|
|
ByteArrayOutputStream bos = new ByteArrayOutputStream(); |
|
|
|
|
@ -1525,6 +1542,10 @@ class ResolvableTypeTests {
@@ -1525,6 +1542,10 @@ class ResolvableTypeTests {
|
|
|
|
|
public int[] intArray; |
|
|
|
|
|
|
|
|
|
public SomeRepository<? extends Serializable> repository; |
|
|
|
|
|
|
|
|
|
public SomeRepository<String> stringRepository; |
|
|
|
|
|
|
|
|
|
public SomeRepository<String[]> arrayRepository; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|