From 13cd9f23d399bf89732cacb89177eda2e0ac1c33 Mon Sep 17 00:00:00 2001 From: INADA Naoki Date: Wed, 12 Dec 2018 17:14:05 +0900 Subject: [PATCH 1/2] Remove old TIMESTAMP format for MySQL<4.1 --- MySQLdb/converters.py | 2 +- MySQLdb/times.py | 14 -------------- 2 files changed, 1 insertion(+), 15 deletions(-) diff --git a/MySQLdb/converters.py b/MySQLdb/converters.py index 7b1eb035..f0d01786 100644 --- a/MySQLdb/converters.py +++ b/MySQLdb/converters.py @@ -117,7 +117,7 @@ def quote_tuple(t, d): FIELD_TYPE.LONGLONG: int, FIELD_TYPE.INT24: int, FIELD_TYPE.YEAR: int, - FIELD_TYPE.TIMESTAMP: mysql_timestamp_converter, + FIELD_TYPE.TIMESTAMP: DateTime_or_None, FIELD_TYPE.DATETIME: DateTime_or_None, FIELD_TYPE.TIME: TimeDelta_or_None, FIELD_TYPE.DATE: Date_or_None, diff --git a/MySQLdb/times.py b/MySQLdb/times.py index a7eaa53b..d47c8fb8 100644 --- a/MySQLdb/times.py +++ b/MySQLdb/times.py @@ -129,17 +129,3 @@ def DateTime2literal(d, c): def DateTimeDelta2literal(d, c): """Format a DateTimeDelta object as a time.""" return string_literal(format_TIMEDELTA(d)) - -def mysql_timestamp_converter(s): - """Convert a MySQL TIMESTAMP to a Timestamp object.""" - # MySQL>4.1 returns TIMESTAMP in the same format as DATETIME - if s[4] == '-': return DateTime_or_None(s) - s = s + "0"*(14-len(s)) # padding - parts = map(int, filter(None, (s[:4],s[4:6],s[6:8], - s[8:10],s[10:12],s[12:14]))) - try: - return Timestamp(*parts) - except (SystemExit, KeyboardInterrupt): - raise # pragma: no cover - except: - return None From 8480d952bbd90d12b367b01756f31422fb0ed12a Mon Sep 17 00:00:00 2001 From: INADA Naoki Date: Wed, 12 Dec 2018 17:35:55 +0900 Subject: [PATCH 2/2] Remove test for timestamp_converter --- tests/test_MySQLdb_times.py | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/tests/test_MySQLdb_times.py b/tests/test_MySQLdb_times.py index 8000f645..d9d3e027 100644 --- a/tests/test_MySQLdb_times.py +++ b/tests/test_MySQLdb_times.py @@ -81,18 +81,6 @@ def test_timestamp_from_ticks(self, mock): assert times.TimestampFromTicks(1430000000.123) == datetime(2015, 4, 25, 22, 13, 20) -class TestTimestampConverter(unittest.TestCase): - def test_mysql_timestamp_converter(self): - assert times.mysql_timestamp_converter('2015-12-13') == date(2015, 12, 13) - assert times.mysql_timestamp_converter('2038-01-19 03:14:07') == datetime(2038, 1, 19, 3, 14, 7) - - assert times.mysql_timestamp_converter('2015121310') == datetime(2015, 12, 13, 10, 0) - assert times.mysql_timestamp_converter('20151213101112') == datetime(2015, 12, 13, 10, 11, 12) - - assert times.mysql_timestamp_converter('20151313') is None - assert times.mysql_timestamp_converter('2015-13-13') is None - - class TestToLiteral(unittest.TestCase): def test_datetime_to_literal(self): assert times.DateTime2literal(datetime(2015, 12, 13), '') == b"'2015-12-13 00:00:00'"