From 516a6a254814d2bc6a90290dfc44d77fdfb4050b Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Tue, 18 Jun 2019 02:13:58 +0200 Subject: bpo-33529, email: Fix infinite loop in email header encoding (GH-12020) (GH-14162) (cherry picked from commit c1f5667be1e3ec5871560c677402c1252c6018a6) --- Lib/test/test_email/test_policy.py | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'Lib/test/test_email/test_policy.py') diff --git a/Lib/test/test_email/test_policy.py b/Lib/test/test_email/test_policy.py index 8fecb8a5fc..c2c437e6ac 100644 --- a/Lib/test/test_email/test_policy.py +++ b/Lib/test/test_email/test_policy.py @@ -237,6 +237,14 @@ class PolicyAPITests(unittest.TestCase): email.policy.EmailPolicy.header_factory) self.assertEqual(newpolicy.__dict__, {'raise_on_defect': True}) + def test_non_ascii_chars_do_not_cause_inf_loop(self): + policy = email.policy.default.clone(max_line_length=20) + actual = policy.fold('Subject', 'ą' * 12) + self.assertEqual( + actual, + 'Subject: \n' + + 12 * ' =?utf-8?q?=C4=85?=\n') + # XXX: Need subclassing tests. # For adding subclassed objects, make sure the usual rules apply (subclass # wins), but that the order still works (right overrides left). -- cgit v1.2.1