From 83e97c2870fe31a33c7673fb075679f445c4c277 Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Fri, 17 Feb 2012 15:29:54 +0000 Subject: [PATCH] [#1147] Add integration tests for executing SQL generated using Factory.renderInlined() --- jOOQ-test/src/org/jooq/test/BaseTest.java | 26 +++++++++++++ .../jooq/test/_/testcases/GeneralTests.java | 2 +- .../test/_/testcases/RenderAndBindTests.java | 37 +++++++++++++++++++ jOOQ-test/src/org/jooq/test/ase/create.sql | 10 ++--- .../ase/generatedclasses/tables/TDates.java | 7 +--- .../tables/records/TDatesRecord.java | 12 ++---- .../src/org/jooq/test/jOOQAbstractTest.java | 18 +++------ 7 files changed, 79 insertions(+), 33 deletions(-) diff --git a/jOOQ-test/src/org/jooq/test/BaseTest.java b/jOOQ-test/src/org/jooq/test/BaseTest.java index eb9de9d53b..f1b5dfcab3 100644 --- a/jOOQ-test/src/org/jooq/test/BaseTest.java +++ b/jOOQ-test/src/org/jooq/test/BaseTest.java @@ -40,6 +40,8 @@ import java.math.BigDecimal; import java.math.BigInteger; import java.sql.Connection; import java.sql.Date; +import java.sql.Time; +import java.sql.Timestamp; import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -241,6 +243,30 @@ public abstract class BaseTest< return delegate.TUnsigned_U_LONG(); } + public Table TDates() { + return delegate.TDates(); + } + + @SuppressWarnings("unchecked") + protected final TableField TDates_ID() { + return (TableField) getField(TDates(), "ID"); + } + + @SuppressWarnings("unchecked") + protected final TableField TDates_D() { + return (TableField) getField(TDates(), "D"); + } + + @SuppressWarnings("unchecked") + protected final TableField TDates_T() { + return (TableField) getField(TDates(), "T"); + } + + @SuppressWarnings("unchecked") + protected final TableField TDates_TS() { + return (TableField) getField(TDates(), "TS"); + } + protected Table TArrays() { return delegate.TArrays(); } diff --git a/jOOQ-test/src/org/jooq/test/_/testcases/GeneralTests.java b/jOOQ-test/src/org/jooq/test/_/testcases/GeneralTests.java index bbc9824064..c50cbe293b 100644 --- a/jOOQ-test/src/org/jooq/test/_/testcases/GeneralTests.java +++ b/jOOQ-test/src/org/jooq/test/_/testcases/GeneralTests.java @@ -489,7 +489,7 @@ extends BaseTest dates = + create.select(TDates_ID(), TDates_D(), TDates_T(), TDates_TS()) + .from(TDates()) + .orderBy(TDates_ID()) + .fetch(); + + assertEquals(2, dates.size()); + assertEquals(asList(1, 2), dates.getValues(TDates_ID())); + assertEquals(asList(1, null, null, null), asList(dates.get(0).intoArray())); + assertEquals(asList((Object) 2, d1, t1, ts1), asList(dates.get(1).intoArray())); + } } diff --git a/jOOQ-test/src/org/jooq/test/ase/create.sql b/jOOQ-test/src/org/jooq/test/ase/create.sql index eea03f93ee..709f9351df 100644 --- a/jOOQ-test/src/org/jooq/test/ase/create.sql +++ b/jOOQ-test/src/org/jooq/test/ase/create.sql @@ -58,11 +58,11 @@ CREATE TABLE t_identity ( CREATE TABLE t_dates ( id int, - d date, - t time, - ts timestamp, - d_int int, - ts_bigint bigint, + d date null, + t time null, + ts datetime null, + d_int int null, + ts_bigint bigint null, CONSTRAINT pk_t_dates PRIMARY KEY (id) ) diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TDates.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TDates.java index 36bc7a5dd6..beb1c724f5 100644 --- a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TDates.java +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TDates.java @@ -8,7 +8,7 @@ package org.jooq.test.ase.generatedclasses.tables; */ public class TDates extends org.jooq.impl.UpdatableTableImpl { - private static final long serialVersionUID = -1986889297; + private static final long serialVersionUID = -1429057447; /** * The singleton instance of t_dates @@ -47,11 +47,8 @@ public class TDates extends org.jooq.impl.UpdatableTableImpl - * Deserialising this field might not work! */ - public static final org.jooq.TableField TS = createField("ts", org.jooq.util.ase.ASEDataType.getDefaultDataType("timestamp"), T_DATES); + public static final org.jooq.TableField TS = createField("ts", org.jooq.impl.SQLDataType.TIMESTAMP, T_DATES); /** * An uncommented item diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TDatesRecord.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TDatesRecord.java index 214c661dca..c1d76ca22e 100644 --- a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TDatesRecord.java +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TDatesRecord.java @@ -8,7 +8,7 @@ package org.jooq.test.ase.generatedclasses.tables.records; */ public class TDatesRecord extends org.jooq.impl.UpdatableRecordImpl { - private static final long serialVersionUID = 560535563; + private static final long serialVersionUID = 690713213; /** * An uncommented item @@ -58,21 +58,15 @@ public class TDatesRecord extends org.jooq.impl.UpdatableRecordImpl - * Deserialising this field might not work! */ - public void setTs(java.lang.Object value) { + public void setTs(java.sql.Timestamp value) { setValue(org.jooq.test.ase.generatedclasses.tables.TDates.TS, value); } /** * An uncommented item - * - * The SQL type of this item (timestamp) could not be mapped.
- * Deserialising this field might not work! */ - public java.lang.Object getTs() { + public java.sql.Timestamp getTs() { return getValue(org.jooq.test.ase.generatedclasses.tables.TDates.TS); } diff --git a/jOOQ-test/src/org/jooq/test/jOOQAbstractTest.java b/jOOQ-test/src/org/jooq/test/jOOQAbstractTest.java index 14684673e5..0c5a493d0f 100644 --- a/jOOQ-test/src/org/jooq/test/jOOQAbstractTest.java +++ b/jOOQ-test/src/org/jooq/test/jOOQAbstractTest.java @@ -496,19 +496,6 @@ public abstract class jOOQAbstractTest< protected abstract TableField TUnsigned_U_LONG(); protected abstract Table TDates(); - protected final TableField TDates_ID() { - return (TableField) TDates().getField("ID"); - } - protected final TableField TDates_D() { - return (TableField) TDates().getField("D"); - } - protected final TableField TDates_T() { - return (TableField) TDates().getField("T"); - } - protected final TableField TDates_TS() { - return (TableField) TDates().getField("TS"); - } - protected abstract Table TArrays(); protected abstract TableField TArrays_ID(); @@ -1318,6 +1305,11 @@ public abstract class jOOQAbstractTest< new RenderAndBindTests(this).testInlinedBindValues(); } + @Test + public void testInlinedBindValuesForDatetime() throws Exception { + new RenderAndBindTests(this).testInlinedBindValuesForDatetime(); + } + @Test public void testPivotClause() throws Exception { new ExoticTests(this).testPivotClause();