### Question:
PropertyUtil { public static boolean isSimpleValueType(Class<?> clazz) { return isPrimitiveOrWrapper(clazz) || clazz.isEnum() || CharSequence.class.isAssignableFrom(clazz) || Number.class.isAssignableFrom(clazz) || Date.class.isAssignableFrom(clazz) || clazz.equals(URI.class) || clazz.equals(URL.class) || clazz.equals(Locale.class) || clazz.equals(Class.class) || clazz.equals(Serializable.class); } private  PropertyUtil(); static boolean isSimpleProperty(Class<?> clazz); static boolean isSimpleValueType(Class<?> clazz); static boolean isCollectionProperty(Type type, boolean includeMaps); static boolean isCollectionProperty(Class<?> clazz, boolean includeMaps); static boolean isMapProperty(Type type); static boolean isMapProperty(Class<?> clazz); static Class<?> getCollectionElementType(Type type); static Object getProperty(Object bean, String name); static void setProperty(Object bean, String name, Object value); static Method getReadMethod(Object bean, String name); static Boolean isPrimitiveOrWrapper(Class<?> clazz);  }### Answer:
@Test public void shouldCheckIfSimpleValueType() { assertTrue(PropertyUtil.isSimpleValueType(Integer.class)); assertTrue(PropertyUtil.isSimpleValueType(DummyClass.Enum.class)); assertTrue(PropertyUtil.isSimpleValueType(BigInteger.class)); assertTrue(PropertyUtil.isSimpleValueType(Date.class)); assertTrue(PropertyUtil.isSimpleValueType(String.class)); assertTrue(PropertyUtil.isSimpleValueType(URI.class)); assertTrue(PropertyUtil.isSimpleValueType(URL.class)); assertTrue(PropertyUtil.isSimpleValueType(Locale.class)); assertTrue(PropertyUtil.isSimpleValueType(Class.class)); assertTrue(PropertyUtil.isSimpleValueType(Serializable.class)); assertTrue(PropertyUtil.isSimpleValueType(Timestamp.class)); assertFalse(PropertyUtil.isSimpleValueType(DummyClass.class)); }