Kaydet (Commit) 6f1a40ff authored tarafından Antoine Pitrou's avatar Antoine Pitrou

Merge universal newlines-related fixes (issue #13119)

......@@ -563,21 +563,22 @@ class ProcessTestCase(BaseTestCase):
def test_universal_newlines(self):
p = subprocess.Popen([sys.executable, "-c",
'import sys,os;' + SETBINARY +
'sys.stdout.write(sys.stdin.readline());'
'sys.stdout.flush();'
'sys.stdout.write("line2\\n");'
'sys.stdout.flush();'
'sys.stdout.write(sys.stdin.read());'
'sys.stdout.flush();'
'sys.stdout.write("line4\\n");'
'sys.stdout.flush();'
'sys.stdout.write("line5\\r\\n");'
'sys.stdout.flush();'
'sys.stdout.write("line6\\r");'
'sys.stdout.flush();'
'sys.stdout.write("\\nline7");'
'sys.stdout.flush();'
'sys.stdout.write("\\nline8");'],
'buf = sys.stdout.buffer;'
'buf.write(sys.stdin.readline().encode());'
'buf.flush();'
'buf.write(b"line2\\n");'
'buf.flush();'
'buf.write(sys.stdin.read().encode());'
'buf.flush();'
'buf.write(b"line4\\n");'
'buf.flush();'
'buf.write(b"line5\\r\\n");'
'buf.flush();'
'buf.write(b"line6\\r");'
'buf.flush();'
'buf.write(b"\\nline7");'
'buf.flush();'
'buf.write(b"\\nline8");'],
stdin=subprocess.PIPE,
stdout=subprocess.PIPE,
universal_newlines=1)
......@@ -597,17 +598,18 @@ class ProcessTestCase(BaseTestCase):
# universal newlines through communicate()
p = subprocess.Popen([sys.executable, "-c",
'import sys,os;' + SETBINARY +
'sys.stdout.write("line2\\n");'
'sys.stdout.flush();'
'sys.stdout.write("line4\\n");'
'sys.stdout.flush();'
'sys.stdout.write("line5\\r\\n");'
'sys.stdout.flush();'
'sys.stdout.write("line6\\r");'
'sys.stdout.flush();'
'sys.stdout.write("\\nline7");'
'sys.stdout.flush();'
'sys.stdout.write("\\nline8");'],
'buf = sys.stdout.buffer;'
'buf.write(b"line2\\n");'
'buf.flush();'
'buf.write(b"line4\\n");'
'buf.flush();'
'buf.write(b"line5\\r\\n");'
'buf.flush();'
'buf.write(b"line6\\r");'
'buf.flush();'
'buf.write(b"\\nline7");'
'buf.flush();'
'buf.write(b"\\nline8");'],
stderr=subprocess.PIPE,
stdout=subprocess.PIPE,
universal_newlines=1)
......
......@@ -535,7 +535,8 @@ class SysModuleTest(unittest.TestCase):
p = subprocess.Popen([sys.executable, "-c", 'print(chr(0xa2))'],
stdout = subprocess.PIPE, env=env)
out = p.communicate()[0].strip()
self.assertEqual(out, "\xa2\n".encode("cp424"))
expected = ("\xa2" + os.linesep).encode("cp424")
self.assertEqual(out, expected)
env["PYTHONIOENCODING"] = "ascii:replace"
p = subprocess.Popen([sys.executable, "-c", 'print(chr(0xa2))'],
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment