12
12
import com .scalar .db .io .BooleanColumn ;
13
13
import com .scalar .db .io .Column ;
14
14
import com .scalar .db .io .DataType ;
15
+ import com .scalar .db .io .DateColumn ;
15
16
import com .scalar .db .io .DoubleColumn ;
16
17
import com .scalar .db .io .FloatColumn ;
17
18
import com .scalar .db .io .IntColumn ;
18
19
import 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 ;
19
23
import com .scalar .db .transaction .consensuscommit .Attribute ;
20
24
import java .nio .charset .StandardCharsets ;
25
+ import java .time .Instant ;
26
+ import java .time .LocalDate ;
27
+ import java .time .LocalDateTime ;
28
+ import java .time .LocalTime ;
21
29
import java .util .*;
22
30
23
31
/** Utils for the service unit tests */
@@ -31,6 +39,10 @@ public class UnitTestUtils {
31
39
public static final String TEST_COLUMN_5 = "col5" ;
32
40
public static final String TEST_COLUMN_6 = "col6" ;
33
41
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" ;
34
46
35
47
public static final String TEST_VALUE_TEXT = "test value" ;
36
48
@@ -44,6 +56,10 @@ public class UnitTestUtils {
44
56
public static final Long TEST_VALUE_LONG = BigIntColumn .MAX_VALUE ;
45
57
public static final boolean TEST_VALUE_BOOLEAN = true ;
46
58
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 );
47
63
public static final String TEST_CSV_DELIMITER = ";" ;
48
64
49
65
public static TableMetadata createTestTableMetadata () {
@@ -55,6 +71,10 @@ public static TableMetadata createTestTableMetadata() {
55
71
.addColumn (TEST_COLUMN_5 , DataType .DOUBLE )
56
72
.addColumn (TEST_COLUMN_6 , DataType .TEXT )
57
73
.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 )
58
78
.addColumn (Attribute .BEFORE_PREFIX + TEST_COLUMN_4 , DataType .FLOAT )
59
79
.addColumn (Attribute .BEFORE_PREFIX + TEST_COLUMN_5 , DataType .DOUBLE )
60
80
.addColumn (Attribute .BEFORE_PREFIX + TEST_COLUMN_6 , DataType .TEXT )
@@ -85,6 +105,10 @@ public static ObjectNode getOutputDataWithMetadata() {
85
105
rootNode .put (TEST_COLUMN_5 , TEST_VALUE_DOUBLE );
86
106
rootNode .put (TEST_COLUMN_6 , TEST_VALUE_TEXT );
87
107
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 ());
88
112
rootNode .put (Attribute .BEFORE_PREFIX + TEST_COLUMN_4 , TEST_VALUE_FLOAT );
89
113
rootNode .put (Attribute .BEFORE_PREFIX + TEST_COLUMN_5 , TEST_VALUE_DOUBLE );
90
114
rootNode .put (Attribute .BEFORE_PREFIX + TEST_COLUMN_6 , TEST_VALUE_TEXT );
@@ -112,6 +136,11 @@ public static ObjectNode getOutputDataWithoutMetadata() {
112
136
rootNode .put (TEST_COLUMN_5 , TEST_VALUE_DOUBLE );
113
137
rootNode .put (TEST_COLUMN_6 , TEST_VALUE_TEXT );
114
138
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
+
115
144
return rootNode ;
116
145
}
117
146
@@ -124,6 +153,10 @@ public static List<String> getColumnsListOfMetadata() {
124
153
projectedColumns .add (TEST_COLUMN_5 );
125
154
projectedColumns .add (TEST_COLUMN_6 );
126
155
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 );
127
160
projectedColumns .add (Attribute .BEFORE_PREFIX + TEST_COLUMN_4 );
128
161
projectedColumns .add (Attribute .BEFORE_PREFIX + TEST_COLUMN_5 );
129
162
projectedColumns .add (Attribute .BEFORE_PREFIX + TEST_COLUMN_6 );
@@ -150,6 +183,10 @@ public static Map<String, DataType> getColumnData() {
150
183
columnData .put (TEST_COLUMN_5 , DataType .DOUBLE );
151
184
columnData .put (TEST_COLUMN_6 , DataType .TEXT );
152
185
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 );
153
190
columnData .put (Attribute .BEFORE_PREFIX + TEST_COLUMN_4 , DataType .FLOAT );
154
191
columnData .put (Attribute .BEFORE_PREFIX + TEST_COLUMN_5 , DataType .DOUBLE );
155
192
columnData .put (Attribute .BEFORE_PREFIX + TEST_COLUMN_6 , DataType .TEXT );
@@ -176,6 +213,10 @@ public static Map<String, Column<?>> createTestValues() {
176
213
values .put (TEST_COLUMN_5 , DoubleColumn .of (TEST_COLUMN_5 , TEST_VALUE_DOUBLE ));
177
214
values .put (TEST_COLUMN_6 , TextColumn .of (TEST_COLUMN_6 , TEST_VALUE_TEXT ));
178
215
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 ));
179
220
values .put (
180
221
Attribute .BEFORE_PREFIX + TEST_COLUMN_4 ,
181
222
FloatColumn .of (Attribute .BEFORE_PREFIX + TEST_COLUMN_4 , TEST_VALUE_FLOAT ));
@@ -219,6 +260,14 @@ public static String getSourceTestValue(DataType dataType) {
219
260
return TEST_VALUE_BLOB_BASE64 ;
220
261
case BOOLEAN :
221
262
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 ();
222
271
case TEXT :
223
272
default :
224
273
return TEST_VALUE_TEXT ;
0 commit comments