Kaydet (Commit) bb839ef8 authored tarafından Guido van Rossum's avatar Guido van Rossum

More str/bytes goodness.

üst f6db4099
...@@ -553,8 +553,8 @@ class Popen(object): ...@@ -553,8 +553,8 @@ class Popen(object):
def _translate_newlines(self, data): def _translate_newlines(self, data):
data = data.replace("\r\n", "\n") data = data.replace(b"\r\n", b"\n")
data = data.replace("\r", "\n") data = data.replace(b"\r", b"\n")
return str(data) return str(data)
......
...@@ -118,7 +118,7 @@ class ProcessTestCase(unittest.TestCase): ...@@ -118,7 +118,7 @@ class ProcessTestCase(unittest.TestCase):
p = subprocess.Popen([sys.executable, "-c", p = subprocess.Popen([sys.executable, "-c",
'import sys; sys.exit(sys.stdin.read() == "pear")'], 'import sys; sys.exit(sys.stdin.read() == "pear")'],
stdin=subprocess.PIPE) stdin=subprocess.PIPE)
p.stdin.write("pear") p.stdin.write(b"pear")
p.stdin.close() p.stdin.close()
p.wait() p.wait()
self.assertEqual(p.returncode, 1) self.assertEqual(p.returncode, 1)
...@@ -138,7 +138,7 @@ class ProcessTestCase(unittest.TestCase): ...@@ -138,7 +138,7 @@ class ProcessTestCase(unittest.TestCase):
def test_stdin_fileobj(self): def test_stdin_fileobj(self):
# stdin is set to open file object # stdin is set to open file object
tf = tempfile.TemporaryFile() tf = tempfile.TemporaryFile()
tf.write("pear") tf.write(b"pear")
tf.seek(0) tf.seek(0)
p = subprocess.Popen([sys.executable, "-c", p = subprocess.Popen([sys.executable, "-c",
'import sys; sys.exit(sys.stdin.read() == "pear")'], 'import sys; sys.exit(sys.stdin.read() == "pear")'],
...@@ -254,7 +254,8 @@ class ProcessTestCase(unittest.TestCase): ...@@ -254,7 +254,8 @@ class ProcessTestCase(unittest.TestCase):
stdout=subprocess.PIPE, stdout=subprocess.PIPE,
cwd=tmpdir) cwd=tmpdir)
normcase = os.path.normcase normcase = os.path.normcase
self.assertEqual(normcase(p.stdout.read()), bytes(normcase(tmpdir))) self.assertEqual(normcase(p.stdout.read().decode("utf-8")),
normcase(tmpdir))
def test_env(self): def test_env(self):
newenv = os.environ.copy() newenv = os.environ.copy()
...@@ -270,7 +271,7 @@ class ProcessTestCase(unittest.TestCase): ...@@ -270,7 +271,7 @@ class ProcessTestCase(unittest.TestCase):
p = subprocess.Popen([sys.executable, "-c", p = subprocess.Popen([sys.executable, "-c",
'import sys; sys.exit(sys.stdin.read() == "pear")'], 'import sys; sys.exit(sys.stdin.read() == "pear")'],
stdin=subprocess.PIPE) stdin=subprocess.PIPE)
p.communicate("pear") p.communicate(b"pear")
self.assertEqual(p.returncode, 1) self.assertEqual(p.returncode, 1)
def test_communicate_stdout(self): def test_communicate_stdout(self):
...@@ -289,7 +290,7 @@ class ProcessTestCase(unittest.TestCase): ...@@ -289,7 +290,7 @@ class ProcessTestCase(unittest.TestCase):
self.assertEqual(stdout, None) self.assertEqual(stdout, None)
# When running with a pydebug build, the # of references is outputted # When running with a pydebug build, the # of references is outputted
# to stderr, so just check if stderr at least started with "pinapple" # to stderr, so just check if stderr at least started with "pinapple"
self.assert_(stderr.startswith("pineapple")) self.assert_(stderr.startswith(b"pineapple"))
def test_communicate(self): def test_communicate(self):
p = subprocess.Popen([sys.executable, "-c", p = subprocess.Popen([sys.executable, "-c",
...@@ -343,8 +344,8 @@ class ProcessTestCase(unittest.TestCase): ...@@ -343,8 +344,8 @@ class ProcessTestCase(unittest.TestCase):
stdin=subprocess.PIPE, stdin=subprocess.PIPE,
stdout=subprocess.PIPE, stdout=subprocess.PIPE,
stderr=subprocess.PIPE) stderr=subprocess.PIPE)
p.stdin.write("banana") p.stdin.write(b"banana")
(stdout, stderr) = p.communicate("split") (stdout, stderr) = p.communicate(b"split")
self.assertEqual(stdout, b"bananasplit") self.assertEqual(stdout, b"bananasplit")
self.assertEqual(remove_stderr_debug_decorations(stderr), "") self.assertEqual(remove_stderr_debug_decorations(stderr), "")
......
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