From c13d90b35086331fb37687c95c602b1aa0fb52a5 Mon Sep 17 00:00:00 2001 From: Michael Twomey Date: Thu, 17 Oct 2013 22:33:30 +0100 Subject: Handle compact date format Thanks to rvandolson@esri.com Fixes #6 --- iso8601/iso8601.py | 2 +- iso8601/test_iso8601.py | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) (limited to 'iso8601') diff --git a/iso8601/iso8601.py b/iso8601/iso8601.py index 2be28dc..efd6413 100644 --- a/iso8601/iso8601.py +++ b/iso8601/iso8601.py @@ -173,7 +173,7 @@ def parse_date(datestring, default_timezone=UTC): year=to_int(groups, "year"), month=to_int(groups, "month"), day=to_int(groups, "day"), - hour=to_int(groups, "hour"), + hour=to_int(groups, "hour", default_to_zero=True), minute=to_int(groups, "minute", default_to_zero=True), second=to_int(groups, "second", default_to_zero=True), microsecond=groups["second_fraction"], diff --git a/iso8601/test_iso8601.py b/iso8601/test_iso8601.py index 7a3c7a0..17e1a21 100644 --- a/iso8601/test_iso8601.py +++ b/iso8601/test_iso8601.py @@ -58,6 +58,7 @@ def test_parse_invalid_date(invalid_date): ("20131015T18:30Z", datetime.datetime(2013, 10, 15, 18, 30, 0, 0, iso8601.UTC)), # YYYYMMDD ("2012-12-19T23:21:28.512400+00:00", datetime.datetime(2012, 12, 19, 23, 21, 28, 512400, iso8601.FixedOffset(0, 0, "+00:00"))), # https://code.google.com/p/pyiso8601/issues/detail?id=21 ("2006-10-20T15:34:56.123+0230", datetime.datetime(2006, 10, 20, 15, 34, 56, 123000, iso8601.FixedOffset(2, 30, "+02:30"))), # https://code.google.com/p/pyiso8601/issues/detail?id=18 + ("19950204", datetime.datetime(1995, 2, 4, tzinfo=iso8601.UTC)), # https://code.google.com/p/pyiso8601/issues/detail?id=1 ]) def test_parse_valid_date(valid_date, expected_datetime): parsed = iso8601.parse_date(valid_date) -- cgit v1.2.1