From: Barry Warsaw <barry@python.org>
Date: Mon, 30 Dec 2002 19:14:38 +0000 (+0000)
Subject: test_bad_8bit_header(): Tests for optional argument `errors'.  See SF
X-Git-Tag: v2.3c1~2814
X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=10ee7a7f15dd9c356c434575ab26c26bafc0112d;p=python

test_bad_8bit_header(): Tests for optional argument `errors'.  See SF
bug #648119.
---

diff --git a/Lib/email/test/test_email.py b/Lib/email/test/test_email.py
index 7c79739bd6..1c77819b4b 100644
--- a/Lib/email/test/test_email.py
+++ b/Lib/email/test/test_email.py
@@ -2307,6 +2307,17 @@ A very long line that must get split to something other than at the
         h = Header(u'\u83ca\u5730\u6642\u592b', 'utf-8')
         eq(h.encode(), '=?utf-8?b?6I+K5Zyw5pmC5aSr?=')
 
+    def test_bad_8bit_header(self):
+        raises = self.assertRaises
+        eq = self.assertEqual
+        x = 'Ynwp4dUEbay Auction Semiar- No Charge \x96 Earn Big'
+        raises(UnicodeError, Header, x)
+        h = Header()
+        raises(UnicodeError, h.append, x)
+        eq(str(Header(x, errors='replace')), x)
+        h.append(x, errors='replace')
+        eq(str(h), x)
+
 
 
 # Test RFC 2231 header parameters (en/de)coding