From 5c2829beea4f89c3663204d247c798f44c3e8bec Mon Sep 17 00:00:00 2001 From: snower Date: Thu, 1 Feb 2024 14:16:47 +0800 Subject: [PATCH] Optimize datetime examples and test cases --- examples/datetime/datetime.sql | 4 +++- setup.py | 2 +- tests/test_example_datetime.py | 8 +++++++- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/examples/datetime/datetime.sql b/examples/datetime/datetime.sql index 2ed4256..b240ddf 100644 --- a/examples/datetime/datetime.sql +++ b/examples/datetime/datetime.sql @@ -15,4 +15,6 @@ select FROM_UNIXTIME(1677833819), UNIX_TIMESTAMP(), UNIX_TIMESTAMP(now()), CURRE select UTC_DATE(), UTC_TIME(), UTC_TIMESTAMP(); -select date(now()), datetime(now()), time(now()), datetime(date(now())), datetime(time(now())), date(time(now())), time(date(now())); \ No newline at end of file +select date(now()), datetime(now()), time(now()), datetime(date(now())), datetime(time(now())), date(time(now())), time(date(now())); + +select DATE_FORMAT(convert_datetime('1600-01-01'), '%Y-%m-%d %H:%M:%S'), DATE_FORMAT(convert_datetime('1900-01-01 10:12:23'), '%Y-%m-%d %H:%M:%S'), TIME_FORMAT(convert_datetime('1800-01-01 10:12:23'), '%H:%M:%S'); \ No newline at end of file diff --git a/setup.py b/setup.py index 16e84a5..421c799 100644 --- a/setup.py +++ b/setup.py @@ -38,7 +38,7 @@ install_requires=[ "pyyaml>=5.1.2", "sqlglot>=11.5.5,<12", - "syncany>=0.2.18", + "syncany>=0.2.19", 'Pygments>=2.14.0', 'prompt-toolkit>=3.0.36', "rich>=9.11.1", diff --git a/tests/test_example_datetime.py b/tests/test_example_datetime.py index 0cb3f3d..053bd08 100644 --- a/tests/test_example_datetime.py +++ b/tests/test_example_datetime.py @@ -60,4 +60,10 @@ def test_datetime(self): self.assert_value(18, "DATETIME(DATE(NOW()))", lambda value: isinstance(value, datetime.datetime), "data error") self.assert_value(18, "DATETIME(TIME(NOW()))", lambda value: isinstance(value, datetime.datetime), "data error") self.assert_value(18, "DATE(TIME(NOW()))", None, "data error") - self.assert_value(18, "TIME(DATE(NOW()))", lambda value: isinstance(value, datetime.time), "data error") \ No newline at end of file + self.assert_value(18, "TIME(DATE(NOW()))", lambda value: isinstance(value, datetime.time), "data error") + + self.assert_value(20, "DATE_FORMAT(CONVERT_DATETIME('1600-01-01'), '%Y-%m-%d %H:%M:%S')", + '1600-01-01 00:00:00', "data error") + self.assert_value(20, "DATE_FORMAT(CONVERT_DATETIME('1900-01-01 10:12:23'), '%Y-%m-%d %H:%M:%S')", + '1900-01-01 10:12:23', "data error") + self.assert_value(20, "TIME_FORMAT(CONVERT_DATETIME('1800-01-01 10:12:23'), '%H:%M:%S')", '10:12:23', "data error")