@Test
void serializeType()
{

    Type type = new DefaultParameterizedType(null, Void.class);
    assertEquals("java.lang.Void", ReflectionUtils.serializeType(type));
    type = new DefaultParameterizedType(Collections.class, List.class);
    assertEquals("java.util.Collections.java.util.List", ReflectionUtils.serializeType(type));
    type = new DefaultParameterizedType(Collections.class, List.class, String.class);
    assertEquals("java.util.Collections.java.util.List<java.lang.String>", ReflectionUtils.serializeType(type));
    type = new DefaultParameterizedType(null, Map.class, Integer.class, String.class);
    assertEquals("java.util.Map<java.lang.Integer, java.lang.String>", ReflectionUtils.serializeType(type));
    type = new DefaultParameterizedType(null, Map.class, Integer.class,
        new DefaultParameterizedType(null, List.class, String.class));
    assertEquals("java.util.Map<java.lang.Integer, java.util.List<java.lang.String>>",
        ReflectionUtils.serializeType(type));
    type = String.class;
    assertEquals("java.lang.String", ReflectionUtils.serializeType(type));
    Map<String, List<Integer>> stringListMap = new HashMap<>();
    assertEquals("java.util.HashMap", ReflectionUtils.serializeType(stringListMap.getClass()));
    assertNull(ReflectionUtils.serializeType(null));
}