Index: Lib/test/test_site.py =================================================================== --- Lib/test/test_site.py (révision 80144) +++ Lib/test/test_site.py (copie de travail) @@ -268,7 +268,13 @@ parent = os.path.relpath(os.path.dirname(os.__file__)) env = os.environ.copy() env['PYTHONPATH'] = parent - command = 'import os; print(os.__file__, os.__cached__)' + code = ('import os, sys', + # use ASCII to avoid locale issues with non-ASCII directories + 'os_file = os.__file__.encode("ascii", "backslashreplace")', + 'os_cached = os.__cached__.encode("ascii", "backslashreplace")', + r'text = os_file + b":" + os_cached + b"\n"', + 'sys.stdout.buffer.write(text)') + command = '\n'.join(code) # First, prove that with -S (no 'import site'), the paths are # relative. proc = subprocess.Popen([sys.executable, '-S', '-c', command], @@ -276,8 +282,9 @@ stdout=subprocess.PIPE, stderr=subprocess.PIPE) stdout, stderr = proc.communicate() + self.assertEqual(proc.returncode, 0) - os__file__, os__cached__ = stdout.split() + os__file__, os__cached__ = stdout.split(b':') self.assertFalse(os.path.isabs(os__file__)) self.assertFalse(os.path.isabs(os__cached__)) # Now, with 'import site', it works. @@ -287,7 +294,7 @@ stderr=subprocess.PIPE) stdout, stderr = proc.communicate() self.assertEqual(proc.returncode, 0) - os__file__, os__cached__ = stdout.split() + os__file__, os__cached__ = stdout.split(b':') self.assertTrue(os.path.isabs(os__file__)) self.assertTrue(os.path.isabs(os__cached__))