diff options
author | Aurélien Bompard <aurelien@bompard.org> | 2012-10-02 15:49:52 +0200 |
---|---|---|
committer | Aurélien Bompard <aurelien@bompard.org> | 2012-10-02 15:49:52 +0200 |
commit | b328be7a3260995eae650f9afb09b0225d8e4d29 (patch) | |
tree | 8156d57018b9d84d1aa39fb24395e1284c761911 | |
parent | 55b91e39d5c9e00be349bb55c9afc7c9d58f8941 (diff) | |
download | kittystore-b328be7a3260995eae650f9afb09b0225d8e4d29.tar.gz kittystore-b328be7a3260995eae650f9afb09b0225d8e4d29.tar.xz kittystore-b328be7a3260995eae650f9afb09b0225d8e4d29.zip |
Handle dates without timezone
-rw-r--r-- | kittystore/test/test_utils.py | 5 | ||||
-rw-r--r-- | kittystore/utils.py | 3 |
2 files changed, 7 insertions, 1 deletions
diff --git a/kittystore/test/test_utils.py b/kittystore/test/test_utils.py index 64466b8..118d2e5 100644 --- a/kittystore/test/test_utils.py +++ b/kittystore/test/test_utils.py @@ -66,6 +66,11 @@ class TestUtils(unittest.TestCase): "UTC offset %s for datetime %s is too large" % (parsed.utcoffset(), parsed)) + def test_datestring_no_timezone(self): + datestring = "Sun, 12 Dec 2004 19:11:28" + parsed = kittystore.utils.parsedate(datestring) + self.assertEqual(parsed, datetime.datetime(2004, 12, 12, 19, 11, 28)) + def test_unknown_encoding(self): """Unknown encodings should just replace unknown characters""" header = "=?x-gbk?Q?Frank_B=A8=B9ttner?=" diff --git a/kittystore/utils.py b/kittystore/utils.py index ddb4d64..5b7eb10 100644 --- a/kittystore/utils.py +++ b/kittystore/utils.py @@ -85,7 +85,8 @@ def parsedate(datestring): parsed = dateutil.parser.parse(datestring) except ValueError: return None - if abs(parsed.utcoffset()) > timedelta(hours=13): + if parsed.utcoffset() is not None and \ + abs(parsed.utcoffset()) > timedelta(hours=13): parsed = parsed.astimezone(dateutil.tz.tzutc()) return parsed #date_tuple = email.utils.parsedate_tz(datestring) |