summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAurélien Bompard <aurelien@bompard.org>2012-10-02 15:49:52 +0200
committerAurélien Bompard <aurelien@bompard.org>2012-10-02 15:49:52 +0200
commitb328be7a3260995eae650f9afb09b0225d8e4d29 (patch)
tree8156d57018b9d84d1aa39fb24395e1284c761911
parent55b91e39d5c9e00be349bb55c9afc7c9d58f8941 (diff)
downloadkittystore-b328be7a3260995eae650f9afb09b0225d8e4d29.tar.gz
kittystore-b328be7a3260995eae650f9afb09b0225d8e4d29.tar.xz
kittystore-b328be7a3260995eae650f9afb09b0225d8e4d29.zip
Handle dates without timezone
-rw-r--r--kittystore/test/test_utils.py5
-rw-r--r--kittystore/utils.py3
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)