fix parse error of parse_date() and parse_datetime() when input is 0 (#144)

This commit is contained in:
YannLuo
2018-03-26 18:48:53 +08:00
committed by Samuel Colvin
parent 94c0a33609
commit 778a33fac9
2 changed files with 4 additions and 2 deletions
+2 -2
View File
@@ -91,7 +91,7 @@ def parse_date(value: Union[date, StrIntFloat]) -> date:
return value
number = get_numeric(value)
if number:
if number is not None:
return from_unix_seconds(number).date()
match = date_re.match(value)
@@ -139,7 +139,7 @@ def parse_datetime(value: Union[datetime, StrIntFloat]) -> datetime:
return value
number = get_numeric(value)
if number:
if number is not None:
return from_unix_seconds(number)
match = datetime_re.match(value)
+2
View File
@@ -23,6 +23,7 @@ def create_tz(minutes):
(1494012444.883309, date(2017, 5, 5)),
('1494012444', date(2017, 5, 5)),
(1494012444, date(2017, 5, 5)),
(0, date(1970, 1, 1)),
('2012-04-23', date(2012, 4, 23)),
('2012-4-9', date(2012, 4, 9)),
(date(2012, 4, 9), date(2012, 4, 9)),
@@ -76,6 +77,7 @@ def test_time_parsing(value, result):
('2012-04-23T10:20:30.400+02', datetime(2012, 4, 23, 10, 20, 30, 400000, create_tz(120))),
('2012-04-23T10:20:30.400-02', datetime(2012, 4, 23, 10, 20, 30, 400000, create_tz(-120))),
(datetime(2017, 5, 5), datetime(2017, 5, 5)),
(0, datetime(1970, 1, 1, 0, 0, 0, tzinfo=timezone.utc)),
# Invalid inputs
('x20120423091500', ValueError),
('2012-04-56T09:15:90', ValueError),