summaryrefslogtreecommitdiffstats
path: root/Lib/email/test
diff options
context:
space:
mode:
authorR. David Murray <rdmurray@bitdance.com>2010-03-08 02:17:03 (GMT)
committerR. David Murray <rdmurray@bitdance.com>2010-03-08 02:17:03 (GMT)
commit57a4b983a66ec5cd9b5af37cb6095cfc188f053a (patch)
treee3b8475393a872ec86c66a572842a0b8746df89a /Lib/email/test
parentae5f2f4a39e6a3f4c45e9dc95bd4e1fe5dfb60f2 (diff)
downloadcpython-57a4b983a66ec5cd9b5af37cb6095cfc188f053a.zip
cpython-57a4b983a66ec5cd9b5af37cb6095cfc188f053a.tar.gz
cpython-57a4b983a66ec5cd9b5af37cb6095cfc188f053a.tar.bz2
bdecode was already gone in email 5. This merge adds the test from
the trunk patch, and removes the last trace of bdecode, which was a commented out call in message.py. Merged revisions 78778 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r78778 | r.david.murray | 2010-03-07 21:04:06 -0500 (Sun, 07 Mar 2010) | 9 lines Issue #7143: get_payload used to strip any trailing newline from a base64 transfer-encoded payload *after* decoding it; it no longer does. email had a special method in utils, _bdecode, specifically to do this, so it must have served a purpose at some point, yet it is clearly wrong per RFC. Fixed with Barry's approval, but no backport. Email package minor version number is bumped, now version 4.0.1. Patch by Joaquin Cuenca Abela. ........
Diffstat (limited to 'Lib/email/test')
-rw-r--r--Lib/email/test/data/msg_10.txt7
-rw-r--r--Lib/email/test/test_email.py6
2 files changed, 12 insertions, 1 deletions
diff --git a/Lib/email/test/data/msg_10.txt b/Lib/email/test/data/msg_10.txt
index bd30d13..0790396 100644
--- a/Lib/email/test/data/msg_10.txt
+++ b/Lib/email/test/data/msg_10.txt
@@ -26,6 +26,13 @@ VGhpcyBpcyBhIEJhc2U2NCBlbmNvZGVkIG1lc3NhZ2Uu
--BOUNDARY
Content-Type: text/plain; charset="iso-8859-1"
+Content-Transfer-Encoding: Base64
+
+VGhpcyBpcyBhIEJhc2U2NCBlbmNvZGVkIG1lc3NhZ2UuCg==
+
+
+--BOUNDARY
+Content-Type: text/plain; charset="iso-8859-1"
This has no Content-Transfer-Encoding: header.
diff --git a/Lib/email/test/test_email.py b/Lib/email/test/test_email.py
index 27ddc7c..5e4d9ba 100644
--- a/Lib/email/test/test_email.py
+++ b/Lib/email/test/test_email.py
@@ -204,8 +204,12 @@ class TestMessageAPI(TestEmailBase):
# Subpart 3 is base64
eq(msg.get_payload(2).get_payload(decode=True),
b'This is a Base64 encoded message.')
- # Subpart 4 has no Content-Transfer-Encoding: header.
+ # Subpart 4 is base64 with a trailing newline, which
+ # used to be stripped (issue 7143).
eq(msg.get_payload(3).get_payload(decode=True),
+ b'This is a Base64 encoded message.\n')
+ # Subpart 5 has no Content-Transfer-Encoding: header.
+ eq(msg.get_payload(4).get_payload(decode=True),
b'This has no Content-Transfer-Encoding: header.\n')
def test_get_decoded_uu_payload(self):