[Python-checkins] r85751 - python/branches/issue4388/Lib/test/test_pydoc.py

victor.stinner python-checkins at python.org
Wed Oct 20 18:17:16 CEST 2010


Author: victor.stinner
Date: Wed Oct 20 18:17:15 2010
New Revision: 85751

Log:
test_pydoc: run_pydoc() uses utf-8 for I/O


Modified:
   python/branches/issue4388/Lib/test/test_pydoc.py

Modified: python/branches/issue4388/Lib/test/test_pydoc.py
==============================================================================
--- python/branches/issue4388/Lib/test/test_pydoc.py	(original)
+++ python/branches/issue4388/Lib/test/test_pydoc.py	Wed Oct 20 18:17:15 2010
@@ -200,8 +200,11 @@
     """
     cmd = [sys.executable, pydoc.__file__, " ".join(args), module_name]
     try:
-        output = subprocess.Popen(cmd, stdout=subprocess.PIPE).communicate()[0]
-        return output.strip()
+        env = os.environ.copy()
+        env['PYTHONIOENCODING'] = 'utf-8'
+        output = subprocess.Popen(cmd, stdout=subprocess.PIPE, env=env).communicate()[0]
+        output = str(output, 'utf-8', 'surrogatepass')
+        return output.rstrip()
     finally:
         reap_children()
 
@@ -271,7 +274,7 @@
 
     def test_not_here(self):
         missing_module = "test.i_am_not_here"
-        result = str(run_pydoc(missing_module), 'ascii')
+        result = run_pydoc(missing_module)
         expected = missing_pattern % missing_module
         self.assertEqual(expected, result,
             "documentation for missing module found")
@@ -307,7 +310,6 @@
                     f.write("import {}\n".format(importstring))
                 try:
                     result = run_pydoc(modname)
-                    result = result.decode("ascii", "surrogateescape")
                 finally:
                     forget(modname)
                 expected = badimport_pattern % (modname, expectedinmsg)
@@ -315,7 +317,7 @@
 
     def test_input_strip(self):
         missing_module = " test.i_am_not_here "
-        result = str(run_pydoc(missing_module), 'ascii')
+        result = run_pydoc(missing_module)
         expected = missing_pattern % missing_module.strip()
         self.assertEqual(expected, result)
 


More information about the Python-checkins mailing list