Commit a5e7f8f8 authored by R David Murray's avatar R David Murray

#16564: test to confirm behavior that regressed in python3.

Also add running of test_email_renamed to the email regrtest.  It contains
tests that the base email/tests/test_email.py does not, which I discovered
while trying to backport this test for confirmation of the behavior.
parent 56656b01
......@@ -994,6 +994,21 @@ class TestMIMEApplication(unittest.TestCase):
eq(msg.get_payload(), '+vv8/f7/')
eq(msg.get_payload(decode=True), bytes)
def test_body_with_encode_noop(self):
# Issue 16564: This does not produce an RFC valid message, since to be
# valid it should have a CTE of binary. But the below works, and is
# documented as working this way.
bytesdata = b'\xfa\xfb\xfc\xfd\xfe\xff'
msg = MIMEApplication(bytesdata, _encoder=encoders.encode_noop)
self.assertEqual(msg.get_payload(), bytesdata)
self.assertEqual(msg.get_payload(decode=True), bytesdata)
s = StringIO()
g = Generator(s)
g.flatten(msg)
wireform = s.getvalue()
msg2 = email.message_from_string(wireform)
self.assertEqual(msg.get_payload(), bytesdata)
self.assertEqual(msg2.get_payload(decode=True), bytesdata)
# Test the basic MIMEText class
......
......@@ -3,10 +3,12 @@
# The specific tests now live in Lib/email/test
from email.test.test_email import suite
from email.test.test_email_renamed import suite as suite2
from test import test_support
def test_main():
test_support.run_unittest(suite())
test_support.run_unittest(suite2())
if __name__ == '__main__':
test_main()
......@@ -748,6 +748,10 @@ Extension Modules
Tests
-----
- We now run both test_email.py and test_email_renamed.py when running the
test_email regression test. test_email_renamed contains some tests that
test_email does not.
- Issue #17041: Fix testing when Python is configured with the
--without-doc-strings option.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment