The bufsize argument to Popen() should accept None meaning the default (0).

This commit is contained in:
Guido van Rossum 2007-06-07 21:56:45 +00:00
parent ad5b9de288
commit 46a05a7db5
2 changed files with 10 additions and 0 deletions

View File

@ -465,6 +465,8 @@ class Popen(object):
_cleanup()
self._child_created = False
if bufsize is None:
bufsize = 0 # Restore default
if not isinstance(bufsize, int):
raise TypeError("bufsize must be an integer")

View File

@ -455,6 +455,14 @@ class ProcessTestCase(unittest.TestCase):
else:
self.fail("Expected TypeError")
def test_bufsize_is_none(self):
# bufsize=None should be the same as bufsize=0.
p = subprocess.Popen([sys.executable, "-c", "pass"], None)
self.assertEqual(p.wait(), 0)
# Again with keyword arg
p = subprocess.Popen([sys.executable, "-c", "pass"], bufsize=None)
self.assertEqual(p.wait(), 0)
#
# POSIX tests
#