@@ -196,6 +196,33 @@ class ApplicationTest {
196196 }
197197 }
198198
199+ @Test
200+ fun testExecuteSelectTIME () {
201+ withTestApplication({ module(testing = true ) }) {
202+
203+ handleRequest(HttpMethod .Post , " /Execute" ) {
204+ addHeader(HttpHeaders .ContentType , " */*" )
205+ setBody(Json .encodeToString(ExecuteStatementRequest (dummyResourceArn, dummySecretArn,
206+ " SELECT CAST('22:41:04.968123' AS TIME) AS value" )))
207+ }.apply {
208+ assertEquals(
209+ " {\" numberOfRecordsUpdated\" :0,\" generatedFields\" :null,\" records\" :[[{\" blobValue\" :null,\" booleanValue\" :null,\" doubleValue\" :null,\" isNull\" :null,\" longValue\" :null,\" stringValue\" :\" 22:41:05\" }]],\" columnMetadata\" :null}" ,
210+ response.content)
211+ assertEquals(HttpStatusCode .OK , response.status())
212+ }
213+ handleRequest(HttpMethod .Post , " /Execute" ) {
214+ addHeader(HttpHeaders .ContentType , " */*" )
215+ setBody(Json .encodeToString(ExecuteStatementRequest (dummyResourceArn, dummySecretArn,
216+ " SELECT CAST('22:41:04' AS TIME) AS value" )))
217+ }.apply {
218+ assertEquals(
219+ " {\" numberOfRecordsUpdated\" :0,\" generatedFields\" :null,\" records\" :[[{\" blobValue\" :null,\" booleanValue\" :null,\" doubleValue\" :null,\" isNull\" :null,\" longValue\" :null,\" stringValue\" :\" 22:41:04\" }]],\" columnMetadata\" :null}" ,
220+ response.content)
221+ assertEquals(HttpStatusCode .OK , response.status())
222+ }
223+ }
224+ }
225+
199226 @Test
200227 fun testExecuteSelectTIMESTAMP () {
201228 withTestApplication({ module(testing = true ) }) {
@@ -205,11 +232,12 @@ class ApplicationTest {
205232 " SELECT CAST('2021-03-10 22:41:04.968123' AS TIMESTAMP) AS value" )))
206233 }.apply {
207234 assertEquals(
208- " {\" numberOfRecordsUpdated\" :0,\" generatedFields\" :null,\" records\" :[[{\" blobValue\" :null,\" booleanValue\" :null,\" doubleValue\" :null,\" isNull\" :null,\" longValue\" :null,\" stringValue\" :\" 2021-03-10 22:41:04.968 \" }]],\" columnMetadata\" :null}" ,
235+ " {\" numberOfRecordsUpdated\" :0,\" generatedFields\" :null,\" records\" :[[{\" blobValue\" :null,\" booleanValue\" :null,\" doubleValue\" :null,\" isNull\" :null,\" longValue\" :null,\" stringValue\" :\" 2021-03-10 22:41:04.968123 \" }]],\" columnMetadata\" :null}" ,
209236 response.content)
210237 assertEquals(HttpStatusCode .OK , response.status())
211238 }
212239
240+
213241 handleRequest(HttpMethod .Post , " /Execute" ) {
214242 addHeader(HttpHeaders .ContentType , " */*" )
215243 setBody(Json .encodeToString(ExecuteStatementRequest (dummyResourceArn, dummySecretArn,
@@ -223,6 +251,35 @@ class ApplicationTest {
223251 }
224252 }
225253
254+ @Test
255+ fun testExecuteSelectTIME_WITH_TZ () {
256+ ResourceManager .INSTANCE .setResource(" h2:./test;MODE=PostgreSQL" , dummyResourceArn, null , null , emptyMap())
257+
258+ withTestApplication({ module(testing = true ) }) {
259+ handleRequest(HttpMethod .Post , " /Execute" ) {
260+ addHeader(HttpHeaders .ContentType , " */*" )
261+ setBody(Json .encodeToString(ExecuteStatementRequest (dummyResourceArn, dummySecretArn,
262+ " SELECT CAST('22:41:04.968123+02' AS TIME(6) WITH TIME ZONE) as value" )))
263+ }.apply {
264+ assertEquals(
265+ " {\" numberOfRecordsUpdated\" :0,\" generatedFields\" :null,\" records\" :[[{\" blobValue\" :null,\" booleanValue\" :null,\" doubleValue\" :null,\" isNull\" :null,\" longValue\" :null,\" stringValue\" :\" 20:41:04.968\" }]],\" columnMetadata\" :null}" ,
266+ response.content)
267+ assertEquals(HttpStatusCode .OK , response.status())
268+ }
269+
270+ handleRequest(HttpMethod .Post , " /Execute" ) {
271+ addHeader(HttpHeaders .ContentType , " */*" )
272+ setBody(Json .encodeToString(ExecuteStatementRequest (dummyResourceArn, dummySecretArn,
273+ " SELECT CAST('22:41:04+02' AS TIME(6) WITH TIME ZONE) AS value" )))
274+ }.apply {
275+ assertEquals(
276+ " {\" numberOfRecordsUpdated\" :0,\" generatedFields\" :null,\" records\" :[[{\" blobValue\" :null,\" booleanValue\" :null,\" doubleValue\" :null,\" isNull\" :null,\" longValue\" :null,\" stringValue\" :\" 20:41:04\" }]],\" columnMetadata\" :null}" ,
277+ response.content)
278+ assertEquals(HttpStatusCode .OK , response.status())
279+ }
280+ }
281+ }
282+
226283 @Test
227284 fun testExecuteSelectTIMESTAMP_WITH_TZ () {
228285 ResourceManager .INSTANCE .setResource(" h2:./test;MODE=PostgreSQL" , dummyResourceArn, null , null , emptyMap())
@@ -231,21 +288,21 @@ class ApplicationTest {
231288 handleRequest(HttpMethod .Post , " /Execute" ) {
232289 addHeader(HttpHeaders .ContentType , " */*" )
233290 setBody(Json .encodeToString(ExecuteStatementRequest (dummyResourceArn, dummySecretArn,
234- " SELECT CAST('2021-03-10 22:41:04.968123' AS TIMESTAMP(6) WITH TIME ZONE) as value" )))
291+ " SELECT CAST('2021-03-10 22:41:04.968123+02 ' AS TIMESTAMP(6) WITH TIME ZONE) as value" )))
235292 }.apply {
236293 assertEquals(
237- " {\" numberOfRecordsUpdated\" :0,\" generatedFields\" :null,\" records\" :[[{\" blobValue\" :null,\" booleanValue\" :null,\" doubleValue\" :null,\" isNull\" :null,\" longValue\" :null,\" stringValue\" :\" 2021-03-10 22 :41:04.968123\" }]],\" columnMetadata\" :null}" ,
294+ " {\" numberOfRecordsUpdated\" :0,\" generatedFields\" :null,\" records\" :[[{\" blobValue\" :null,\" booleanValue\" :null,\" doubleValue\" :null,\" isNull\" :null,\" longValue\" :null,\" stringValue\" :\" 2021-03-10 20 :41:04.968123\" }]],\" columnMetadata\" :null}" ,
238295 response.content)
239296 assertEquals(HttpStatusCode .OK , response.status())
240297 }
241298
242299 handleRequest(HttpMethod .Post , " /Execute" ) {
243300 addHeader(HttpHeaders .ContentType , " */*" )
244301 setBody(Json .encodeToString(ExecuteStatementRequest (dummyResourceArn, dummySecretArn,
245- " SELECT CAST('2021-03-10 22:41:04' AS TIMESTAMP(6) WITH TIME ZONE) AS value" )))
302+ " SELECT CAST('2021-03-10 22:41:04+02 ' AS TIMESTAMP(6) WITH TIME ZONE) AS value" )))
246303 }.apply {
247304 assertEquals(
248- " {\" numberOfRecordsUpdated\" :0,\" generatedFields\" :null,\" records\" :[[{\" blobValue\" :null,\" booleanValue\" :null,\" doubleValue\" :null,\" isNull\" :null,\" longValue\" :null,\" stringValue\" :\" 2021-03-10 22 :41:04\" }]],\" columnMetadata\" :null}" ,
305+ " {\" numberOfRecordsUpdated\" :0,\" generatedFields\" :null,\" records\" :[[{\" blobValue\" :null,\" booleanValue\" :null,\" doubleValue\" :null,\" isNull\" :null,\" longValue\" :null,\" stringValue\" :\" 2021-03-10 20 :41:04\" }]],\" columnMetadata\" :null}" ,
249306 response.content)
250307 assertEquals(HttpStatusCode .OK , response.status())
251308 }
0 commit comments