mirror of
https://github.com/python/cpython.git
synced 2025-09-26 18:29:57 +00:00
#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.
This commit is contained in:
parent
56656b0118
commit
a5e7f8f8e0
3 changed files with 21 additions and 0 deletions
|
@ -994,6 +994,21 @@ class TestMIMEApplication(unittest.TestCase):
|
||||||
eq(msg.get_payload(), '+vv8/f7/')
|
eq(msg.get_payload(), '+vv8/f7/')
|
||||||
eq(msg.get_payload(decode=True), bytes)
|
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
|
# Test the basic MIMEText class
|
||||||
|
|
|
@ -3,10 +3,12 @@
|
||||||
|
|
||||||
# The specific tests now live in Lib/email/test
|
# The specific tests now live in Lib/email/test
|
||||||
from email.test.test_email import suite
|
from email.test.test_email import suite
|
||||||
|
from email.test.test_email_renamed import suite as suite2
|
||||||
from test import test_support
|
from test import test_support
|
||||||
|
|
||||||
def test_main():
|
def test_main():
|
||||||
test_support.run_unittest(suite())
|
test_support.run_unittest(suite())
|
||||||
|
test_support.run_unittest(suite2())
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
test_main()
|
test_main()
|
||||||
|
|
|
@ -748,6 +748,10 @@ Extension Modules
|
||||||
Tests
|
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
|
- Issue #17041: Fix testing when Python is configured with the
|
||||||
--without-doc-strings option.
|
--without-doc-strings option.
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue