summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBarry Warsaw <barry@python.org>2002-09-30 15:23:17 (GMT)
committerBarry Warsaw <barry@python.org>2002-09-30 15:23:17 (GMT)
commitd20b66537cd6ae9602feb7c6e237a60adf75739c (patch)
tree5de7a6384ca7bb4ee72af98fa8d449a4687d1b37
parenta2a07bce895c36749fc9f96f384dcba1844ff3d4 (diff)
downloadcpython-d20b66537cd6ae9602feb7c6e237a60adf75739c.zip
cpython-d20b66537cd6ae9602feb7c6e237a60adf75739c.tar.gz
cpython-d20b66537cd6ae9602feb7c6e237a60adf75739c.tar.bz2
The ansi_x3.4_1968 encoding is an alias for ascii, but isn't known in
Python 2.1.3. However it's required by the email tests suite, so poke it into the encodings aliases if it's missing. The is apparently the approved API for doing so. Now we can remove the hexversion shortcircuits in the test suite.
-rw-r--r--Lib/email/__init__.py9
-rw-r--r--Lib/email/test/test_email.py12
2 files changed, 9 insertions, 12 deletions
diff --git a/Lib/email/__init__.py b/Lib/email/__init__.py
index f7759b7..fd129a3 100644
--- a/Lib/email/__init__.py
+++ b/Lib/email/__init__.py
@@ -59,3 +59,12 @@ def message_from_file(fp, _class=None, strict=False):
from email.Message import Message
_class = Message
return Parser(_class, strict=strict).parse(fp)
+
+
+
+# Patch encodings.aliases to recognize 'ansi_x3.4_1968' which isn't a standard
+# alias in Python 2.1.3, but is used by the email package test suite.
+from encodings.aliases import aliases # The aliases dictionary
+if not aliases.has_key('ansi_x3.4_1968'):
+ aliases['ansi_x3.4_1968'] = 'ascii'
+del aliases # Not needed any more
diff --git a/Lib/email/test/test_email.py b/Lib/email/test/test_email.py
index 07460b9..4599156 100644
--- a/Lib/email/test/test_email.py
+++ b/Lib/email/test/test_email.py
@@ -1470,12 +1470,6 @@ class TestIdempotent(TestEmailBase):
self._idempotent(msg, text)
def test_more_rfc2231_parameters(self):
- # BAW: What to do about this. Python 2.1 doesn't know about the
- # charset ansi-x3.4-1968, so this test will fail. Do we teach Python
- # about that charset, and if so, where (maybe Charset.py)? For now,
- # just skip this test if we aren't at least in Python 2.2.
- if sys.hexversion < 0x20200000:
- return
msg, text = self._msgobj('msg_33.txt')
self._idempotent(msg, text)
@@ -2258,12 +2252,6 @@ Do you like this message?
""")
def test_rfc2231_get_content_charset(self):
- # BAW: What to do about this. Python 2.1 doesn't know about the
- # charset ansi-x3.4-1968, so this test will fail. Do we teach Python
- # about that charset, and if so, where (maybe Charset.py)? For now,
- # just skip this test if we aren't at least in Python 2.2.
- if sys.hexversion < 0x20200000:
- return
eq = self.assertEqual
msg = self._msgobj('msg_32.txt')
eq(msg.get_content_charset(), 'us-ascii')