Author: tomdz Date: Sun Oct 15 16:49:28 2006 New Revision: 464324 URL: http://svn.apache.org/viewvc?view=rev&rev=464324 Log: Fixed error in the time converter Enhanced datatypes tests to also test data import from/export to XML
Modified: db/ddlutils/trunk/src/java/org/apache/ddlutils/io/converters/TimeConverter.java db/ddlutils/trunk/src/test/org/apache/ddlutils/io/RoundtripTestBase.java db/ddlutils/trunk/src/test/org/apache/ddlutils/io/TestDatatypes.java Modified: db/ddlutils/trunk/src/java/org/apache/ddlutils/io/converters/TimeConverter.java URL: http://svn.apache.org/viewvc/db/ddlutils/trunk/src/java/org/apache/ddlutils/io/converters/TimeConverter.java?view=diff&rev=464324&r1=464323&r2=464324 ============================================================================== --- db/ddlutils/trunk/src/java/org/apache/ddlutils/io/converters/TimeConverter.java (original) +++ db/ddlutils/trunk/src/java/org/apache/ddlutils/io/converters/TimeConverter.java Sun Oct 15 16:49:28 2006 @@ -87,7 +87,7 @@ } _calendar.clear(); - _calendar.set(Calendar.HOUR, hours); + _calendar.set(Calendar.HOUR_OF_DAY, hours); _calendar.set(Calendar.MINUTE, minutes); _calendar.set(Calendar.SECOND, seconds); return new Time(_calendar.getTimeInMillis()); Modified: db/ddlutils/trunk/src/test/org/apache/ddlutils/io/RoundtripTestBase.java URL: http://svn.apache.org/viewvc/db/ddlutils/trunk/src/test/org/apache/ddlutils/io/RoundtripTestBase.java?view=diff&rev=464324&r1=464323&r2=464324 ============================================================================== --- db/ddlutils/trunk/src/test/org/apache/ddlutils/io/RoundtripTestBase.java (original) +++ db/ddlutils/trunk/src/test/org/apache/ddlutils/io/RoundtripTestBase.java Sun Oct 15 16:49:28 2006 @@ -323,7 +323,7 @@ dbIo.write(expected, writer); getLog().error("Expected model:\n" + writer.toString()); - + writer = new StringWriter(); dbIo.write(actual, writer); Modified: db/ddlutils/trunk/src/test/org/apache/ddlutils/io/TestDatatypes.java URL: http://svn.apache.org/viewvc/db/ddlutils/trunk/src/test/org/apache/ddlutils/io/TestDatatypes.java?view=diff&rev=464324&r1=464323&r2=464324 ============================================================================== --- db/ddlutils/trunk/src/test/org/apache/ddlutils/io/TestDatatypes.java (original) +++ db/ddlutils/trunk/src/test/org/apache/ddlutils/io/TestDatatypes.java Sun Oct 15 16:49:28 2006 @@ -19,6 +19,8 @@ * under the License. */ +import java.io.StringReader; +import java.io.StringWriter; import java.math.BigDecimal; import java.sql.Date; import java.sql.Time; @@ -29,6 +31,7 @@ import java.util.TreeSet; import org.apache.ddlutils.model.Database; +import org.apache.ddlutils.model.Table; import junit.framework.Test; @@ -114,6 +117,45 @@ assertEquals("", alterTablesSql); + + StringWriter stringWriter = new StringWriter(); + DataWriter dataWriter = new DataWriter(stringWriter, "UTF-8"); + + dataWriter.writeDocumentStart(); + for (int idx = 0; idx < getModel().getTableCount(); idx++) + { + Table[] tables = { (Table)getModel().getTable(idx) }; + + dataWriter.write(getPlatform().query(getModel(), "select * from " + tables[0].getName(), tables)); + } + dataWriter.writeDocumentEnd(); + + String dataSql = stringWriter.toString(); + + getPlatform().dropTables(getModel(), false); + + createDatabase(modelXml); + + DataToDatabaseSink sink = new DataToDatabaseSink(getPlatform(), getModel()); + DataReader reader = new DataReader(); + + sink.setEnsureForeignKeyOrder(true); + sink.setUseBatchMode(false); + reader.setModel(getModel()); + reader.setSink(sink); + try + { + reader.parse(new StringReader(dataSql)); + } + catch (Exception ex) + { + throw new RuntimeException(ex); + } + + beans = getRows("roundtrip"); + + assertEquals(expected1, beans.get(0), "avalue"); + assertEquals(expected2, beans.get(1), "avalue"); } /**