1 4 package org.oddjob.values.types; 5 6 import java.text.ParseException ; 7 import java.text.SimpleDateFormat ; 8 import java.util.Date ; 9 import java.util.Locale ; 10 11 import junit.framework.TestCase; 12 13 import org.apache.commons.beanutils.BeanUtils; 14 import org.apache.commons.beanutils.ConvertUtils; 15 import org.apache.commons.beanutils.locale.converters.DateLocaleConverter; 16 import org.apache.log4j.Logger; 17 import org.oddjob.arooa.PropertyProxyResolver; 18 import org.oddjob.arooa.reflect.IntrospectionHelper; 19 20 23 public class DateTypeTest extends TestCase { 24 Logger logger = Logger.getLogger(DateTypeTest.class); 25 Date testDate; 26 String testString; 27 28 PropertyProxyResolver tm = new PropertyProxyResolver(); 29 30 public void setUp() { 31 tm.setProxy(Date .class.getName(), DateType.class.getName()); 32 } 33 34 public void setTestDate(Date d) { 35 logger.debug("testDate = " + d); 36 testDate = d; 37 } 38 39 public void setTestString(String s) { 40 logger.debug("testString = " + s); 41 testString = s; 42 } 43 44 public void testDate() throws ParseException { 46 DateType dt = new DateType(); 47 48 dt.setDate("25-dec-05"); 49 50 Date date = (Date ) IntrospectionHelper.valueFor(dt, Date .class); 51 assertEquals("date", new SimpleDateFormat ("dd-MMM-yy").parse("25-DEC-05"), date); 52 assertEquals("date", new SimpleDateFormat ("dd-MMM-yy").parse("25-DEC-05").toString(), date.toString()); 53 } 54 55 public void testDate2() throws Exception { 57 58 DateLocaleConverter converter = new DateLocaleConverter(Locale.getDefault(), "dd-MMM-yyyy"); 59 converter.setLenient(true); 60 ConvertUtils.register(converter, Date .class); 61 BeanUtils.setProperty(this, "testDate", "25-dec-2005"); 62 assertNotNull(testDate); 63 } 64 65 public void testDate3() throws Exception { 67 DateLocaleConverter converter = new DateLocaleConverter(); 68 ConvertUtils.register(converter, Date .class); 69 BeanUtils.setProperty(this, "testString", 70 new SimpleDateFormat ("dd-MMM-yy").parse("25-DEC-2005")); 71 assertNotNull(testString); 72 } 73 74 } 75 | Popular Tags |