[Python-checkins] cpython (3.2): Fix universal newlines test to avoid the newline translation done by sys.stdout.
antoine.pitrou
python-checkins at python.org
Sun Aug 5 00:29:45 CEST 2012
http://hg.python.org/cpython/rev/481f5d9ef577
changeset: 78421:481f5d9ef577
branch: 3.2
user: Antoine Pitrou <solipsis at pitrou.net>
date: Sun Aug 05 00:23:40 2012 +0200
summary:
Fix universal newlines test to avoid the newline translation done by sys.stdout.
files:
Lib/test/test_subprocess.py | 54 ++++++++++++------------
1 files changed, 28 insertions(+), 26 deletions(-)
diff --git a/Lib/test/test_subprocess.py b/Lib/test/test_subprocess.py
--- a/Lib/test/test_subprocess.py
+++ b/Lib/test/test_subprocess.py
@@ -476,21 +476,22 @@
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)
@@ -510,17 +511,18 @@
# 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)
--
Repository URL: http://hg.python.org/cpython
More information about the Python-checkins
mailing list