Skip to content

Commit 84a5815

Browse files
authored
Manage time types with MariaDB
1 parent bc4859a commit 84a5815

File tree

1 file changed

+81
-0
lines changed

1 file changed

+81
-0
lines changed

src/test/java/org/stdg/test/MariaDBTest.java

Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -317,4 +317,85 @@ private int generateRandomPositiveInt() {
317317

318318
}
319319

320+
// Currently there is no "timestamp with timezone" ( https://jira.mariadb.org/browse/MDEV-10018 )
321+
322+
@Test public void
323+
should_generate_an_insert_statement_with_a_date_type() {
324+
325+
// GIVEN
326+
TestTable playerTable =
327+
buildUniqueTable(DATA_SOURCE
328+
, "Table"
329+
, "date Date"
330+
)
331+
.create()
332+
.insertValues("'2012-09-17'");
333+
334+
// WHEN
335+
String playerTableName = playerTable.getTableName();
336+
String select = "SELECT * FROM " + playerTableName;
337+
SqlTestDataGenerator sqlTestDataGenerator = SqlTestDataGenerator.buildFrom(DATA_SOURCE);
338+
String insertScript = sqlTestDataGenerator.generateInsertScriptFor(select);
339+
340+
// THEN
341+
playerTable.recreate();
342+
SQL_EXECUTOR.execute(insertScript);
343+
assertThat(playerTable).withScript(insertScript)
344+
.hasNumberOfRows(1)
345+
.row(0).hasValues("2012-09-17");
346+
347+
}
348+
349+
@Test public void
350+
should_generate_an_insert_statement_with_a_timestamp_type() {
351+
352+
// GIVEN
353+
TestTable playerTable =
354+
buildUniqueTable(DATA_SOURCE
355+
, "Table"
356+
, "timestampCol TIMESTAMP"
357+
)
358+
.create()
359+
.insertValues("'2012-09-17 19:56:47.32'");
360+
361+
// WHEN
362+
String playerTableName = playerTable.getTableName();
363+
String select = "SELECT * FROM " + playerTableName;
364+
SqlTestDataGenerator sqlTestDataGenerator = SqlTestDataGenerator.buildFrom(DATA_SOURCE);
365+
String insertScript = sqlTestDataGenerator.generateInsertScriptFor(select);
366+
367+
// THEN
368+
playerTable.recreate();
369+
SQL_EXECUTOR.execute(insertScript);
370+
assertThat(playerTable).withScript(insertScript)
371+
.hasNumberOfRows(1);
372+
assertThat(insertScript).contains("'2012-09-17 19:56:47.0'");
373+
}
374+
375+
@Test public void
376+
should_generate_an_insert_statement_with_a_time_type() {
377+
378+
// GIVEN
379+
TestTable playerTable =
380+
buildUniqueTable(DATA_SOURCE
381+
, "Table"
382+
, "col TIME"
383+
)
384+
.create()
385+
.insertValues("'23:59:59'");
386+
387+
// WHEN
388+
String playerTableName = playerTable.getTableName();
389+
String select = "SELECT * FROM " + playerTableName;
390+
SqlTestDataGenerator sqlTestDataGenerator = SqlTestDataGenerator.buildFrom(DATA_SOURCE);
391+
String insertScript = sqlTestDataGenerator.generateInsertScriptFor(select);
392+
393+
// THEN
394+
playerTable.recreate();
395+
SQL_EXECUTOR.execute(insertScript);
396+
assertThat(playerTable).withScript(insertScript)
397+
.hasNumberOfRows(1)
398+
.row(0).hasValues("23:59:59");
399+
}
400+
320401
}

0 commit comments

Comments
 (0)