mirror of
https://gitee.com/dromara/hutool.git
synced 2025-11-24 08:33:22 +08:00
add test
This commit is contained in:
@@ -38,7 +38,8 @@ public class TypeUtilTest {
|
||||
|
||||
@Test
|
||||
void getMapClassTest() {
|
||||
final Class<?> aClass = TypeUtil.getClass(new TypeReference<Map<String, String>>() {});
|
||||
final Class<?> aClass = TypeUtil.getClass(new TypeReference<Map<String, String>>() {
|
||||
});
|
||||
assertEquals(Map.class, aClass);
|
||||
}
|
||||
|
||||
@@ -63,7 +64,7 @@ public class TypeUtilTest {
|
||||
}
|
||||
|
||||
public static class TestClass {
|
||||
public List<String> getList(){
|
||||
public List<String> getList() {
|
||||
return new ArrayList<>();
|
||||
}
|
||||
|
||||
@@ -73,7 +74,7 @@ public class TypeUtilTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getTypeArgumentTest(){
|
||||
public void getTypeArgumentTest() {
|
||||
// 测试不继承父类,而是实现泛型接口时是否可以获取成功。
|
||||
final Type typeArgument = TypeUtil.getTypeArgument(IPService.class);
|
||||
assertEquals(String.class, typeArgument);
|
||||
@@ -90,7 +91,7 @@ public class TypeUtilTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getActualTypesTest(){
|
||||
public void getActualTypesTest() {
|
||||
// 测试多层级泛型参数是否能获取成功
|
||||
final Type idType = TypeUtil.getActualType(Level3.class,
|
||||
FieldUtil.getField(Level3.class, "id"));
|
||||
@@ -111,16 +112,16 @@ public class TypeUtilTest {
|
||||
assertEquals(Object.class, clazz);
|
||||
}
|
||||
|
||||
public static class Level3 extends Level2<Level3>{
|
||||
public static class Level3 extends Level2<Level3> {
|
||||
|
||||
}
|
||||
|
||||
public static class Level2<E> extends Level1<Long>{
|
||||
public static class Level2<E> extends Level1<Long> {
|
||||
|
||||
}
|
||||
|
||||
@Data
|
||||
public static class Level1<T>{
|
||||
public static class Level1<T> {
|
||||
private T id;
|
||||
}
|
||||
|
||||
@@ -171,13 +172,14 @@ public class TypeUtilTest {
|
||||
}
|
||||
|
||||
/**
|
||||
* 测试getClass方法对参数化类型数组List<String>[]的处理
|
||||
* 测试getClass方法对参数化类型数组{@code List<String>[]}的处理
|
||||
* 验证数组组件类型能正确解析为原始类型
|
||||
*/
|
||||
@Test
|
||||
public void getClassForParameterizedArrayTypeTest() {
|
||||
// 创建List<String>[]类型引用
|
||||
Type genericArrayType = new TypeReference<List<String>[]>() {}.getType();
|
||||
Type genericArrayType = new TypeReference<List<String>[]>() {
|
||||
}.getType();
|
||||
// 调用getClass方法处理GenericArrayType
|
||||
Class<?> clazz = TypeUtil.getClass(genericArrayType);
|
||||
// 验证返回List[]类型
|
||||
|
||||
Reference in New Issue
Block a user