Merged revisions 84310 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

........
  r84310 | r.david.murray | 2010-08-24 20:45:55 -0400 (Tue, 24 Aug 2010) | 8 lines

  #1194222: make parsedate always return RFC2822 four character years.

  Two character years are now converted to four character years using
  the Posix standard rule (<68 == 2000, >=68==1900).  This makes the
  parsed date RFC2822 compliant even if the input is not.

  Patch and test by Jeffrey Finkelstein.
........
diff --git a/Lib/email/test/test_email.py b/Lib/email/test/test_email.py
index 0559142..d5ac9c4 100644
--- a/Lib/email/test/test_email.py
+++ b/Lib/email/test/test_email.py
@@ -2230,6 +2230,19 @@
         eq(time.localtime(t)[:6], timetup[:6])
         eq(int(time.strftime('%Y', timetup[:9])), 2003)
 
+    def test_parsedate_y2k(self):
+        """Test for parsing a date with a two-digit year.
+
+        Parsing a date with a two-digit year should return the correct
+        four-digit year. RFC822 allows two-digit years, but RFC2822 (which
+        obsoletes RFC822) requires four-digit years.
+
+        """
+        self.assertEqual(utils.parsedate_tz('25 Feb 03 13:47:26 -0800'),
+                         utils.parsedate_tz('25 Feb 2003 13:47:26 -0800'))
+        self.assertEqual(utils.parsedate_tz('25 Feb 71 13:47:26 -0800'),
+                         utils.parsedate_tz('25 Feb 1971 13:47:26 -0800'))
+
     def test_parseaddr_empty(self):
         self.assertEqual(utils.parseaddr('<>'), ('', ''))
         self.assertEqual(utils.formataddr(utils.parseaddr('<>')), '')