1212import com .scalar .db .io .BooleanColumn ;
1313import com .scalar .db .io .Column ;
1414import com .scalar .db .io .DataType ;
15+ import com .scalar .db .io .DateColumn ;
1516import com .scalar .db .io .DoubleColumn ;
1617import com .scalar .db .io .FloatColumn ;
1718import com .scalar .db .io .IntColumn ;
1819import com .scalar .db .io .TextColumn ;
20+ import com .scalar .db .io .TimeColumn ;
21+ import com .scalar .db .io .TimestampColumn ;
22+ import com .scalar .db .io .TimestampTZColumn ;
1923import com .scalar .db .transaction .consensuscommit .Attribute ;
2024import java .nio .charset .StandardCharsets ;
25+ import java .time .Instant ;
26+ import java .time .LocalDate ;
27+ import java .time .LocalDateTime ;
28+ import java .time .LocalTime ;
2129import java .util .*;
2230
2331/** Utils for the service unit tests */
@@ -31,6 +39,10 @@ public class UnitTestUtils {
3139 public static final String TEST_COLUMN_5 = "col5" ;
3240 public static final String TEST_COLUMN_6 = "col6" ;
3341 public static final String TEST_COLUMN_7 = "col7" ;
42+ public static final String TEST_COLUMN_8 = "col8" ;
43+ public static final String TEST_COLUMN_9 = "col9" ;
44+ public static final String TEST_COLUMN_10 = "col10" ;
45+ public static final String TEST_COLUMN_11 = "col11" ;
3446
3547 public static final String TEST_VALUE_TEXT = "test value" ;
3648
@@ -44,6 +56,10 @@ public class UnitTestUtils {
4456 public static final Long TEST_VALUE_LONG = BigIntColumn .MAX_VALUE ;
4557 public static final boolean TEST_VALUE_BOOLEAN = true ;
4658 public static final double TEST_VALUE_DOUBLE = Double .MIN_VALUE ;
59+ public static final LocalDate TEST_VALUE_DATE = LocalDate .of (2000 , 1 , 1 );
60+ public static final LocalTime TEST_VALUE_TIME = LocalTime .of (1 , 1 , 1 );
61+ public static final LocalDateTime TEST_VALUE_DATE_TIME = LocalDateTime .of (2000 , 1 , 1 , 1 , 1 );
62+ public static final Instant TEST_VALUE_INSTANT = Instant .ofEpochMilli (1740041740 );
4763 public static final String TEST_CSV_DELIMITER = ";" ;
4864
4965 public static TableMetadata createTestTableMetadata () {
@@ -55,6 +71,10 @@ public static TableMetadata createTestTableMetadata() {
5571 .addColumn (TEST_COLUMN_5 , DataType .DOUBLE )
5672 .addColumn (TEST_COLUMN_6 , DataType .TEXT )
5773 .addColumn (TEST_COLUMN_7 , BLOB )
74+ .addColumn (TEST_COLUMN_8 , DataType .DATE )
75+ .addColumn (TEST_COLUMN_9 , DataType .TIME )
76+ .addColumn (TEST_COLUMN_10 , DataType .TIMESTAMP )
77+ .addColumn (TEST_COLUMN_11 , DataType .TIMESTAMPTZ )
5878 .addColumn (Attribute .BEFORE_PREFIX + TEST_COLUMN_4 , DataType .FLOAT )
5979 .addColumn (Attribute .BEFORE_PREFIX + TEST_COLUMN_5 , DataType .DOUBLE )
6080 .addColumn (Attribute .BEFORE_PREFIX + TEST_COLUMN_6 , DataType .TEXT )
@@ -85,6 +105,10 @@ public static ObjectNode getOutputDataWithMetadata() {
85105 rootNode .put (TEST_COLUMN_5 , TEST_VALUE_DOUBLE );
86106 rootNode .put (TEST_COLUMN_6 , TEST_VALUE_TEXT );
87107 rootNode .put (TEST_COLUMN_7 , TEST_VALUE_BLOB );
108+ rootNode .put (TEST_COLUMN_8 , TEST_VALUE_DATE .toString ());
109+ rootNode .put (TEST_COLUMN_9 , TEST_VALUE_TIME .toString ());
110+ rootNode .put (TEST_COLUMN_10 , TEST_VALUE_DATE_TIME .toString ());
111+ rootNode .put (TEST_COLUMN_11 , TEST_VALUE_INSTANT .toString ());
88112 rootNode .put (Attribute .BEFORE_PREFIX + TEST_COLUMN_4 , TEST_VALUE_FLOAT );
89113 rootNode .put (Attribute .BEFORE_PREFIX + TEST_COLUMN_5 , TEST_VALUE_DOUBLE );
90114 rootNode .put (Attribute .BEFORE_PREFIX + TEST_COLUMN_6 , TEST_VALUE_TEXT );
@@ -112,6 +136,11 @@ public static ObjectNode getOutputDataWithoutMetadata() {
112136 rootNode .put (TEST_COLUMN_5 , TEST_VALUE_DOUBLE );
113137 rootNode .put (TEST_COLUMN_6 , TEST_VALUE_TEXT );
114138 rootNode .put (TEST_COLUMN_7 , TEST_VALUE_BLOB );
139+ rootNode .put (TEST_COLUMN_8 , TEST_VALUE_DATE .toString ());
140+ rootNode .put (TEST_COLUMN_9 , TEST_VALUE_TIME .toString ());
141+ rootNode .put (TEST_COLUMN_10 , TEST_VALUE_DATE_TIME .toString ());
142+ rootNode .put (TEST_COLUMN_11 , TEST_VALUE_INSTANT .toString ());
143+
115144 return rootNode ;
116145 }
117146
@@ -124,6 +153,10 @@ public static List<String> getColumnsListOfMetadata() {
124153 projectedColumns .add (TEST_COLUMN_5 );
125154 projectedColumns .add (TEST_COLUMN_6 );
126155 projectedColumns .add (TEST_COLUMN_7 );
156+ projectedColumns .add (TEST_COLUMN_8 );
157+ projectedColumns .add (TEST_COLUMN_9 );
158+ projectedColumns .add (TEST_COLUMN_10 );
159+ projectedColumns .add (TEST_COLUMN_11 );
127160 projectedColumns .add (Attribute .BEFORE_PREFIX + TEST_COLUMN_4 );
128161 projectedColumns .add (Attribute .BEFORE_PREFIX + TEST_COLUMN_5 );
129162 projectedColumns .add (Attribute .BEFORE_PREFIX + TEST_COLUMN_6 );
@@ -150,6 +183,10 @@ public static Map<String, DataType> getColumnData() {
150183 columnData .put (TEST_COLUMN_5 , DataType .DOUBLE );
151184 columnData .put (TEST_COLUMN_6 , DataType .TEXT );
152185 columnData .put (TEST_COLUMN_7 , BLOB );
186+ columnData .put (TEST_COLUMN_8 , DataType .DATE );
187+ columnData .put (TEST_COLUMN_9 , DataType .TIME );
188+ columnData .put (TEST_COLUMN_10 , DataType .TIMESTAMP );
189+ columnData .put (TEST_COLUMN_11 , DataType .TIMESTAMPTZ );
153190 columnData .put (Attribute .BEFORE_PREFIX + TEST_COLUMN_4 , DataType .FLOAT );
154191 columnData .put (Attribute .BEFORE_PREFIX + TEST_COLUMN_5 , DataType .DOUBLE );
155192 columnData .put (Attribute .BEFORE_PREFIX + TEST_COLUMN_6 , DataType .TEXT );
@@ -176,6 +213,10 @@ public static Map<String, Column<?>> createTestValues() {
176213 values .put (TEST_COLUMN_5 , DoubleColumn .of (TEST_COLUMN_5 , TEST_VALUE_DOUBLE ));
177214 values .put (TEST_COLUMN_6 , TextColumn .of (TEST_COLUMN_6 , TEST_VALUE_TEXT ));
178215 values .put (TEST_COLUMN_7 , BlobColumn .of (TEST_COLUMN_7 , TEST_VALUE_BLOB ));
216+ values .put (TEST_COLUMN_8 , DateColumn .of (TEST_COLUMN_8 , TEST_VALUE_DATE ));
217+ values .put (TEST_COLUMN_9 , TimeColumn .of (TEST_COLUMN_9 , TEST_VALUE_TIME ));
218+ values .put (TEST_COLUMN_10 , TimestampColumn .of (TEST_COLUMN_10 , TEST_VALUE_DATE_TIME ));
219+ values .put (TEST_COLUMN_11 , TimestampTZColumn .of (TEST_COLUMN_11 , TEST_VALUE_INSTANT ));
179220 values .put (
180221 Attribute .BEFORE_PREFIX + TEST_COLUMN_4 ,
181222 FloatColumn .of (Attribute .BEFORE_PREFIX + TEST_COLUMN_4 , TEST_VALUE_FLOAT ));
@@ -219,6 +260,14 @@ public static String getSourceTestValue(DataType dataType) {
219260 return TEST_VALUE_BLOB_BASE64 ;
220261 case BOOLEAN :
221262 return Boolean .toString (TEST_VALUE_BOOLEAN );
263+ case DATE :
264+ return TEST_VALUE_DATE .toString ();
265+ case TIME :
266+ return TEST_VALUE_TIME .toString ();
267+ case TIMESTAMP :
268+ return TEST_VALUE_DATE_TIME .toString ();
269+ case TIMESTAMPTZ :
270+ return TEST_VALUE_INSTANT .toString ();
222271 case TEXT :
223272 default :
224273 return TEST_VALUE_TEXT ;
0 commit comments