From 87bb6e9b2f448d5e34e1e841d59bc5e4c20039bd Mon Sep 17 00:00:00 2001 From: Alexander Belopolsky Date: Sat, 29 Jan 2011 18:43:43 +0000 Subject: [PATCH] Merged revisions 88231 via svnmerge from svn+ssh://pythondev@svn.python.org/python/branches/py3k ........ r88231 | alexander.belopolsky | 2011-01-29 12:19:08 -0500 (Sat, 29 Jan 2011) | 4 lines Issue #10939: Fixed imaplib.Internaldate2tuple(). Thanks Joe Peterson for the report and the patch. Reviewed by Georg Brandl. ........ --- Lib/imaplib.py | 6 +++--- Lib/test/test_imaplib.py | 11 +++++++++++ Misc/ACKS | 1 + 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/Lib/imaplib.py b/Lib/imaplib.py index 77806db4e14..fc1e20a27dc 100644 --- a/Lib/imaplib.py +++ b/Lib/imaplib.py @@ -1266,8 +1266,8 @@ class _Authenticator: -Mon2num = {'Jan': 1, 'Feb': 2, 'Mar': 3, 'Apr': 4, 'May': 5, 'Jun': 6, - 'Jul': 7, 'Aug': 8, 'Sep': 9, 'Oct': 10, 'Nov': 11, 'Dec': 12} +Mon2num = {b'Jan': 1, b'Feb': 2, b'Mar': 3, b'Apr': 4, b'May': 5, b'Jun': 6, + b'Jul': 7, b'Aug': 8, b'Sep': 9, b'Oct': 10, b'Nov': 11, b'Dec': 12} def Internaldate2tuple(resp): """Convert IMAP4 INTERNALDATE to UT. @@ -1293,7 +1293,7 @@ def Internaldate2tuple(resp): # INTERNALDATE timezone must be subtracted to get UT zone = (zoneh*60 + zonem)*60 - if zonen == '-': + if zonen == b'-': zone = -zone tt = (year, mon, day, hour, min, sec, -1, -1, -1) diff --git a/Lib/test/test_imaplib.py b/Lib/test/test_imaplib.py index 1ab28c57f8d..39984c535de 100644 --- a/Lib/test/test_imaplib.py +++ b/Lib/test/test_imaplib.py @@ -26,6 +26,17 @@ CERTFILE = None class TestImaplib(unittest.TestCase): + def test_Internaldate2tuple(self): + tt = imaplib.Internaldate2tuple( + b'25 (INTERNALDATE "01-Jan-1970 00:00:00 +0000")') + self.assertEqual(time.mktime(tt), 0) + tt = imaplib.Internaldate2tuple( + b'25 (INTERNALDATE "01-Jan-1970 11:30:00 +1130")') + self.assertEqual(time.mktime(tt), 0) + tt = imaplib.Internaldate2tuple( + b'25 (INTERNALDATE "31-Dec-1969 12:30:00 -1130")') + self.assertEqual(time.mktime(tt), 0) + def test_that_Time2Internaldate_returns_a_result(self): # We can check only that it successfully produces a result, # not the correctness of the result itself, since the result diff --git a/Misc/ACKS b/Misc/ACKS index f9a7c4054fc..c38550d8a70 100644 --- a/Misc/ACKS +++ b/Misc/ACKS @@ -611,6 +611,7 @@ Trevor Perrin Gabriel de Perthuis Tim Peters Benjamin Peterson +Joe Peterson Chris Petrilli Bjorn Pettersen Geoff Philbrick