@@ -1367,6 +1367,18 @@ void spr16456() throws Exception {
1367
1367
assertThat (type .resolveGeneric ()).isEqualTo (Integer .class );
1368
1368
}
1369
1369
1370
+ @ Test
1371
+ void gh32327 () throws Exception {
1372
+ ResolvableType repository1 = ResolvableType .forField (Fields .class .getField ("repository" ));
1373
+ ResolvableType repository2 = ResolvableType .forMethodReturnType (Methods .class .getMethod ("repository" ));
1374
+ assertThat (repository1 .hasUnresolvableGenerics ());
1375
+ assertThat (repository1 .isAssignableFrom (repository2 )).isFalse ();
1376
+ assertThat (repository1 .isAssignableFromResolvedPart (repository2 )).isTrue ();
1377
+ assertThat (repository2 .hasUnresolvableGenerics ());
1378
+ assertThat (repository2 .isAssignableFrom (repository1 )).isTrue ();
1379
+ assertThat (repository2 .isAssignableFromResolvedPart (repository1 )).isTrue ();
1380
+ }
1381
+
1370
1382
1371
1383
private ResolvableType testSerialization (ResolvableType type ) throws Exception {
1372
1384
ByteArrayOutputStream bos = new ByteArrayOutputStream ();
@@ -1407,7 +1419,7 @@ static class ExtendsMap extends HashMap<String, Integer> {
1407
1419
}
1408
1420
1409
1421
1410
- interface SomeRepository {
1422
+ interface SomeRepository < S extends Serializable > {
1411
1423
1412
1424
<T > T someMethod (Class <T > arg0 , Class <?> arg1 , Class <Object > arg2 );
1413
1425
}
@@ -1458,6 +1470,8 @@ static class Fields<T> {
1458
1470
public Integer [] integerArray ;
1459
1471
1460
1472
public int [] intArray ;
1473
+
1474
+ public SomeRepository <? extends Serializable > repository ;
1461
1475
}
1462
1476
1463
1477
@@ -1486,6 +1500,8 @@ interface Methods<T> {
1486
1500
List <String > list1 ();
1487
1501
1488
1502
List <String > list2 ();
1503
+
1504
+ SomeRepository <?> repository ();
1489
1505
}
1490
1506
1491
1507
0 commit comments