/**
* Test generalized conversion
*/
public void testConversion()
{
final IConverterLocator converter = new ConverterLocator();
assertEquals("7", converter.getConverter(Integer.class).convertToString(7, Locale.US));
assertEquals("7.1", converter.getConverter(Double.class).convertToString(7.1, Locale.US));
assertEquals("7,1", converter.getConverter(Double.class).convertToString(7.1, DUTCH_LOCALE));
Calendar cal = Calendar.getInstance(DUTCH_LOCALE);
cal.clear();
cal.set(2002, Calendar.OCTOBER, 24);
Date date = cal.getTime();
assertEquals(date, converter.getConverter(Date.class).convertToObject("24-10-02",
DUTCH_LOCALE));
assertEquals("24-10-02", converter.getConverter(Date.class).convertToString(date,
DUTCH_LOCALE));
// empty strings should return null, NOT throw NPEs
assertNull(converter.getConverter(Integer.class).convertToObject("", Locale.US));
assertNull(converter.getConverter(Byte.class).convertToObject("", Locale.US));
assertNull(converter.getConverter(Character.class).convertToObject("", Locale.US));
assertNull(converter.getConverter(Float.class).convertToObject("", Locale.US));
assertNull(converter.getConverter(Long.class).convertToObject("", Locale.US));
assertNull(converter.getConverter(Short.class).convertToObject("", Locale.US));
assertNull(converter.getConverter(Date.class).convertToObject("", Locale.US));
assertNull(converter.getConverter(Double.class).convertToObject("", Locale.US));
assertEquals(Boolean.FALSE, converter.getConverter(Boolean.class).convertToObject("",
Locale.US));
assertNotNull(converter.getConverter(String.class).convertToObject("", Locale.US));
}