Skip to content

Instantly share code, notes, and snippets.

@maurizio-cucchiara
Created April 16, 2012 10:36
Show Gist options
  • Select an option

  • Save maurizio-cucchiara/2397608 to your computer and use it in GitHub Desktop.

Select an option

Save maurizio-cucchiara/2397608 to your computer and use it in GitHub Desktop.
package org.apache.commons.beanutils.converters;
import junit.framework.TestCase;
import org.apache.commons.beanutils.ConvertUtils;
import java.util.Calendar;
import java.util.Date;
import java.util.Locale;
/**
* User: mcucchiara
* Date: 16/04/12
* Time: 16.22
*/
public class DateTimeConverterTest extends TestCase {
public void testConvertDate2() throws Exception {
DateTimeConverter converter = new DateConverter();
converter.setPattern("EEE, dd MMM yyyy HH:mm:ss Z");
converter.setLocale(Locale.ENGLISH);
ConvertUtils.register(converter, Date.class);
Calendar cl = (Calendar) converter.convert(Calendar.class, "Fri, 13 Apr 2012 17:03:15 GMT");
assertNotNull(cl);
assertEquals(cl.get(Calendar.DAY_OF_MONTH), 13);
assertEquals(cl.get(Calendar.MONTH) + 1, 4);
assertEquals(cl.get(Calendar.YEAR), 2012);
assertEquals(cl.get(Calendar.HOUR_OF_DAY), 17);
assertEquals(cl.get(Calendar.MINUTE), 3);
assertEquals(cl.get(Calendar.SECOND), 15);
}
public void testConvertDateWorkAround() throws Exception {
DateTimeConverter converter = new DateTimeConverter() {
protected Class getDefaultType() {
return Date.class;
}
protected DateFormat getFormat(Locale locale, TimeZone timeZone) {
return new SimpleDateFormat(PATTERN, getLocale());
}
};
converter.setLocale(Locale.ENGLISH);
ConvertUtils.register(converter, Date.class);
Calendar cl = (Calendar) converter.convert(Calendar.class, "Fri, 13 Apr 2012 17:03:15 GMT");
assertNotNull(cl);
assertEquals(cl.get(Calendar.DAY_OF_MONTH), 13);
assertEquals(cl.get(Calendar.MONTH) + 1, 4);
assertEquals(cl.get(Calendar.YEAR), 2012);
assertEquals(cl.get(Calendar.HOUR_OF_DAY), 17);
assertEquals(cl.get(Calendar.MINUTE), 3);
assertEquals(cl.get(Calendar.SECOND), 15);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment