Merge #9298 fix.
This commit is contained in:
commit
bb35299fcd
|
@ -12,7 +12,7 @@ __all__ = [
|
|||
]
|
||||
|
||||
|
||||
from base64 import b64encode as _bencode
|
||||
from base64 import encodebytes as _bencode
|
||||
from quopri import encodestring as _encodestring
|
||||
|
||||
|
||||
|
|
|
@ -573,9 +573,18 @@ class TestMessageAPI(TestEmailBase):
|
|||
msg['Dummy'] = 'dummy\nX-Injected-Header: test'
|
||||
self.assertRaises(errors.HeaderParseError, msg.as_string)
|
||||
|
||||
|
||||
# Test the email.encoders module
|
||||
class TestEncoders(unittest.TestCase):
|
||||
|
||||
def test_EncodersEncode_base64(self):
|
||||
with openfile('PyBanner048.gif', 'rb') as fp:
|
||||
bindata = fp.read()
|
||||
mimed = email.mime.image.MIMEImage(bindata)
|
||||
base64ed = mimed.get_payload()
|
||||
# the transfer-encoded body lines should all be <=76 characters
|
||||
lines = base64ed.split('\n')
|
||||
self.assertLessEqual(max([ len(x) for x in lines ]), 76)
|
||||
|
||||
def test_encode_empty_payload(self):
|
||||
eq = self.assertEqual
|
||||
msg = Message()
|
||||
|
@ -1141,10 +1150,11 @@ class TestMIMEApplication(unittest.TestCase):
|
|||
|
||||
def test_body(self):
|
||||
eq = self.assertEqual
|
||||
bytes = b'\xfa\xfb\xfc\xfd\xfe\xff'
|
||||
msg = MIMEApplication(bytes)
|
||||
eq(msg.get_payload(), '+vv8/f7/')
|
||||
eq(msg.get_payload(decode=True), bytes)
|
||||
bytesdata = b'\xfa\xfb\xfc\xfd\xfe\xff'
|
||||
msg = MIMEApplication(bytesdata)
|
||||
# whitespace in the cte encoded block is RFC-irrelevant.
|
||||
eq(msg.get_payload().strip(), '+vv8/f7/')
|
||||
eq(msg.get_payload(decode=True), bytesdata)
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -227,6 +227,7 @@ Jaromir Dolecek
|
|||
Ismail Donmez
|
||||
Marcos Donolo
|
||||
Dima Dorfman
|
||||
Yves Dorfsman
|
||||
Cesar Douady
|
||||
Dean Draayer
|
||||
Fred L. Drake, Jr.
|
||||
|
|
|
@ -72,6 +72,10 @@ Core and Builtins
|
|||
Library
|
||||
-------
|
||||
|
||||
- Issue #9298: base64 bodies weren't being folded to line lengths less than 78,
|
||||
which was a regression relative to Python2. Unlike Python2, the last line
|
||||
of the folded body now ends with a carriage return.
|
||||
|
||||
- Issue #11560: shutil.unpack_archive now correctly handles the format
|
||||
parameter. Patch by Evan Dandrea.
|
||||
|
||||
|
|
Loading…
Reference in New Issue