@Test
void propertyDescriptorGenericTest()
{

    PropertyDescriptor genericPropertyDescriptor = this.beanDescriptor.getProperty("genericProp");
    assertNotNull(genericPropertyDescriptor);
    assertEquals("genericProp", genericPropertyDescriptor.getId());
    assertEquals("genericProp", genericPropertyDescriptor.getName());
    assertEquals("genericProp", genericPropertyDescriptor.getDescription());
    assertSame(List.class, ((ParameterizedType) genericPropertyDescriptor.getPropertyType()).getRawType());
    assertSame(Integer.class,
        ((ParameterizedType) genericPropertyDescriptor.getPropertyType()).getActualTypeArguments()[0]);
    assertNull(genericPropertyDescriptor.getDefaultValue());
    assertFalse(genericPropertyDescriptor.isMandatory());
    assertNotNull(genericPropertyDescriptor.getWriteMethod());
    assertNotNull(genericPropertyDescriptor.getReadMethod());
    assertNull(genericPropertyDescriptor.getField());
    PropertyDescriptor prop1Descriptor = this.beanDescriptor.getProperty("prop1");
    assertEquals("defaultprop1", prop1Descriptor.getDefaultValue());
}