You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ofbiz.apache.org by ad...@apache.org on 2009/12/22 21:54:55 UTC
svn commit: r893313 - in /ofbiz/trunk/framework/base/src/org/ofbiz/base:
conversion/DateTimeConverters.java test/BaseUnitTests.java
Author: adrianc
Date: Tue Dec 22 20:54:55 2009
New Revision: 893313
URL: http://svn.apache.org/viewvc?rev=893313&view=rev
Log:
First batch of converter tests.
Modified:
ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/DateTimeConverters.java
ofbiz/trunk/framework/base/src/org/ofbiz/base/test/BaseUnitTests.java
Modified: ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/DateTimeConverters.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/DateTimeConverters.java?rev=893313&r1=893312&r2=893313&view=diff
==============================================================================
--- ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/DateTimeConverters.java (original)
+++ ofbiz/trunk/framework/base/src/org/ofbiz/base/conversion/DateTimeConverters.java Tue Dec 22 20:54:55 2009
@@ -20,6 +20,7 @@
import java.text.DateFormat;
import java.text.ParseException;
+import java.util.Date;
import java.util.Locale;
import java.util.TimeZone;
@@ -79,6 +80,11 @@
super(java.util.Date.class, String.class);
}
+ @Override
+ public String convert(Date obj) throws ConversionException {
+ return obj.toString();
+ }
+
public String convert(java.util.Date obj, Locale locale, TimeZone timeZone, String formatString) throws ConversionException {
DateFormat df = null;
if (UtilValidate.isEmpty(formatString)) {
@@ -227,6 +233,11 @@
super(java.sql.Date.class, String.class);
}
+ @Override
+ public String convert(java.sql.Date obj) throws ConversionException {
+ return obj.toString();
+ }
+
public String convert(java.sql.Date obj, Locale locale, TimeZone timeZone, String formatString) throws ConversionException {
DateFormat df = null;
if (UtilValidate.isEmpty(formatString)) {
Modified: ofbiz/trunk/framework/base/src/org/ofbiz/base/test/BaseUnitTests.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/base/src/org/ofbiz/base/test/BaseUnitTests.java?rev=893313&r1=893312&r2=893313&view=diff
==============================================================================
--- ofbiz/trunk/framework/base/src/org/ofbiz/base/test/BaseUnitTests.java (original)
+++ ofbiz/trunk/framework/base/src/org/ofbiz/base/test/BaseUnitTests.java Tue Dec 22 20:54:55 2009
@@ -20,6 +20,7 @@
import junit.framework.TestCase;
+import org.ofbiz.base.conversion.*;
import org.ofbiz.base.util.Debug;
import org.ofbiz.base.util.UtilFormatOut;
import org.ofbiz.base.util.UtilValidate;
@@ -70,4 +71,65 @@
public void testIsFloat_2() {
assertTrue(UtilValidate.isFloat("10.000", true, true, 3, 3));
}
+
+ public void testDateTimeConverters() {
+ // Source class = java.util.Date
+ java.util.Date utilDate = new java.util.Date();
+ long dateMillis = utilDate.getTime();
+ Converter<java.util.Date, Long> dateToLong = new DateTimeConverters.DateToLong();
+ try {
+ Long target = dateToLong.convert(utilDate);
+ assertTrue(buildConversionMessage("DateToLong", dateMillis, target.longValue()), dateMillis == target.longValue());
+ } catch (ConversionException e) {
+ fail(e.getMessage());
+ }
+ Converter<java.util.Date, java.sql.Date> dateToSqlDate = new DateTimeConverters.DateToSqlDate();
+ try {
+ java.sql.Date target = dateToSqlDate.convert(utilDate);
+ assertTrue(buildConversionMessage("DateToSqlDate", dateMillis, target.getTime()), dateMillis == target.getTime());
+ } catch (ConversionException e) {
+ fail(e.getMessage());
+ }
+ Converter<java.util.Date, String> dateToString = new DateTimeConverters.DateToString();
+ try {
+ String target = dateToString.convert(utilDate);
+ assertTrue(buildConversionMessage("DateToString", utilDate.toString(), target), utilDate.toString().equals(target));
+ } catch (ConversionException e) {
+ fail(e.getMessage());
+ }
+ Converter<java.util.Date, java.sql.Timestamp> dateToTimestamp = new DateTimeConverters.DateToTimestamp();
+ try {
+ java.sql.Timestamp timestamp = dateToTimestamp.convert(utilDate);
+ assertTrue(buildConversionMessage("DateToTimestamp", dateMillis, timestamp.getTime()), dateMillis == timestamp.getTime());
+ } catch (ConversionException e) {
+ fail(e.getMessage());
+ }
+ // Source class = java.sql.Date
+ java.sql.Date sqlDate = new java.sql.Date(System.currentTimeMillis());
+ Converter<java.sql.Date, java.util.Date> sqlDateToDate = new DateTimeConverters.SqlDateToDate();
+ try {
+ java.util.Date target = sqlDateToDate.convert(sqlDate);
+ assertTrue(buildConversionMessage("SqlDateToDate", sqlDate.getTime(), target.getTime()), sqlDate.getTime() == target.getTime());
+ } catch (ConversionException e) {
+ fail(e.getMessage());
+ }
+ Converter<java.sql.Date, String> sqlDateToString = new DateTimeConverters.SqlDateToString();
+ try {
+ String target = sqlDateToString.convert(sqlDate);
+ assertTrue(buildConversionMessage("SqlDateToString", sqlDate.toString(), target), sqlDate.toString().equals(target));
+ } catch (ConversionException e) {
+ fail(e.getMessage());
+ }
+ Converter<java.sql.Date, java.sql.Timestamp> sqlDateToTimestamp = new DateTimeConverters.SqlDateToTimestamp();
+ try {
+ java.sql.Timestamp target = sqlDateToTimestamp.convert(sqlDate);
+ assertTrue(buildConversionMessage("SqlDateToTimestamp", sqlDate.getTime(), target.getTime()), sqlDate.getTime() == target.getTime());
+ } catch (ConversionException e) {
+ fail(e.getMessage());
+ }
+ }
+
+ protected static String buildConversionMessage(String conversion, Object source, Object target) {
+ return conversion + " conversion: source = " + source + ", target = " + target;
+ }
}
Re: svn commit: r893313 - in /ofbiz/trunk/framework/base/src/org/ofbiz/base:
conversion/DateTimeConverters.java test/BaseUnitTests.java
Posted by Adrian Crum <ad...@hlmksw.com>.
Adam Heath wrote:
> adrianc@apache.org wrote:
>> Author: adrianc
>> Date: Tue Dec 22 20:54:55 2009
>> New Revision: 893313
>
>> + String target = dateToString.convert(utilDate);
>> + assertTrue(buildConversionMessage("DateToString", utilDate.toString(), target), utilDate.toString().equals(target));
>
> No, do not use assertTrue. Use assertEquals, so that you get "got
> foo, expected bar" message from junit.
Cool. Thanks!
Re: svn commit: r893313 - in /ofbiz/trunk/framework/base/src/org/ofbiz/base:
conversion/DateTimeConverters.java test/BaseUnitTests.java
Posted by Adam Heath <do...@brainfood.com>.
adrianc@apache.org wrote:
> Author: adrianc
> Date: Tue Dec 22 20:54:55 2009
> New Revision: 893313
> + String target = dateToString.convert(utilDate);
> + assertTrue(buildConversionMessage("DateToString", utilDate.toString(), target), utilDate.toString().equals(target));
No, do not use assertTrue. Use assertEquals, so that you get "got
foo, expected bar" message from junit.