summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Oudkerk <shibturn@gmail.com>2013-06-10 15:29:19 (GMT)
committerRichard Oudkerk <shibturn@gmail.com>2013-06-10 15:29:19 (GMT)
commit0e547b66dc206e46b69b91790aa73010290f4fcb (patch)
treecf442ea4095917191e05cdad750efd5cd43dac1c
parent409f90237c07d2365f6e0b527071e74415c073f3 (diff)
downloadcpython-0e547b66dc206e46b69b91790aa73010290f4fcb.zip
cpython-0e547b66dc206e46b69b91790aa73010290f4fcb.tar.gz
cpython-0e547b66dc206e46b69b91790aa73010290f4fcb.tar.bz2
Issue #18174: Fix fd leaks in tests.
-rw-r--r--Lib/test/test_openpty.py2
-rw-r--r--Lib/test/test_subprocess.py3
-rw-r--r--Lib/test/test_uuid.py1
3 files changed, 5 insertions, 1 deletions
diff --git a/Lib/test/test_openpty.py b/Lib/test/test_openpty.py
index e8175ff..6384370 100644
--- a/Lib/test/test_openpty.py
+++ b/Lib/test/test_openpty.py
@@ -10,6 +10,8 @@ if not hasattr(os, "openpty"):
class OpenptyTest(unittest.TestCase):
def test(self):
master, slave = os.openpty()
+ self.addCleanup(os.close, master)
+ self.addCleanup(os.close, slave)
if not os.isatty(slave):
self.fail("Slave-end of pty is not a terminal.")
diff --git a/Lib/test/test_subprocess.py b/Lib/test/test_subprocess.py
index 901d4df..4b90471 100644
--- a/Lib/test/test_subprocess.py
+++ b/Lib/test/test_subprocess.py
@@ -1263,7 +1263,8 @@ class POSIXProcessTestCase(BaseTestCase):
self.stderr.fileno()),
msg="At least one fd was closed early.")
finally:
- map(os.close, devzero_fds)
+ for fd in devzero_fds:
+ os.close(fd)
@unittest.skipIf(not os.path.exists("/dev/zero"), "/dev/zero required.")
def test_preexec_errpipe_does_not_double_close_pipes(self):
diff --git a/Lib/test/test_uuid.py b/Lib/test/test_uuid.py
index 016100d..97ad6d0 100644
--- a/Lib/test/test_uuid.py
+++ b/Lib/test/test_uuid.py
@@ -458,6 +458,7 @@ class TestUUID(unittest.TestCase):
else:
os.close(fds[1])
+ self.addCleanup(os.close, fds[0])
parent_value = uuid.uuid4().hex
os.waitpid(pid, 0)
child_value = os.read(fds[0], 100).decode('latin-1')