From: Anthony Baxter Date: Tue, 20 Sep 2005 15:17:16 +0000 (+0000) Subject: backport: X-Git-Tag: v2.4.2c1~6 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=523263d4436dc025db66be5b4e40ae3f26050ee9;p=thirdparty%2FPython%2Fcpython.git backport: test_default_encoding_issues(): Fully restore sys.setdefaultencoding. test_site often failed under "regrtest.py -r", because this xmlrpc test left sys with a setdefaultencoding attribute, but loading site.py removes that attribute and test_site.py verifies the attribute is gone. Changed this test to get rid of sys.setdefaultencoding if it didn't exist when this test started. --- diff --git a/Lib/test/test_xmlrpc.py b/Lib/test/test_xmlrpc.py index 3a4d8083096f..31fb4d9464f6 100644 --- a/Lib/test/test_xmlrpc.py +++ b/Lib/test/test_xmlrpc.py @@ -63,13 +63,20 @@ class XMLRPCTestCase(unittest.TestCase): """ + + # sys.setdefaultencoding() normally doesn't exist after site.py is + # loaded. reload(sys) is the way to get it back. old_encoding = sys.getdefaultencoding() + setdefaultencoding_existed = hasattr(sys, "setdefaultencoding") reload(sys) # ugh! sys.setdefaultencoding("iso-8859-1") try: (s, d), m = xmlrpclib.loads(utf8) finally: sys.setdefaultencoding(old_encoding) + if not setdefaultencoding_existed: + del sys.setdefaultencoding + items = d.items() if have_unicode: self.assertEquals(s, u"abc \x95")