@@ -381,6 +381,46 @@ public function testShouldReturnNullOnZeroDateDateTime(): void
381381 self ::assertNull ($ event ->values [0 ]['test ' ]);
382382 }
383383
384+ public function testShouldBeDateTime2 (): void
385+ {
386+ $ create_query = 'CREATE TABLE test (test DATETIME(6)); ' ;
387+ $ insert_query = 'INSERT INTO test VALUES("1984-12-03 12:33:07.023450") ' ;
388+
389+ $ event = $ this ->createAndInsertValue ($ create_query , $ insert_query );
390+
391+ self ::assertEquals ('1984-12-03 12:33:07.023450 ' , $ event ->values [0 ]['test ' ]);
392+ }
393+
394+ public function testShouldBeZeroDateTime2 (): void
395+ {
396+ $ create_query = 'CREATE TABLE test (id INTEGER, test DATETIME(6) NOT NULL DEFAULT 0); ' ;
397+ $ insert_query = 'INSERT INTO test (id) VALUES(1) ' ;
398+
399+ $ event = $ this ->createAndInsertValue ($ create_query , $ insert_query );
400+
401+ self ::assertNull ($ event ->values [0 ]['test ' ]);
402+ }
403+
404+ public function testShouldBeBrokenDateTime2 (): void
405+ {
406+ $ create_query = 'CREATE TABLE test (test DATETIME(6) NOT NULL); ' ;
407+ $ insert_query = 'INSERT INTO test VALUES("2013-00-00 00:00:00") ' ;
408+
409+ $ event = $ this ->createAndInsertValue ($ create_query , $ insert_query );
410+
411+ self ::assertNull ($ event ->values [0 ]['test ' ]);
412+ }
413+
414+ public function testShouldReturnNullOnZeroDateDateTime2 (): void
415+ {
416+ $ create_query = 'CREATE TABLE test (test DATETIME(6) NOT NULL); ' ;
417+ $ insert_query = 'INSERT INTO test VALUES("0000-00-00 00:00:00") ' ;
418+
419+ $ event = $ this ->createAndInsertValue ($ create_query , $ insert_query );
420+
421+ self ::assertNull ($ event ->values [0 ]['test ' ]);
422+ }
423+
384424 public function testShouldBeYear (): void
385425 {
386426 $ create_query = 'CREATE TABLE test (test YEAR(4), test2 YEAR, test3 YEAR) ' ;
0 commit comments