Issue #18174: Fix fd leaks in tests.
diff --git a/Lib/test/test_openpty.py b/Lib/test/test_openpty.py
index 20c4fe2..4b34b3a 100644
--- a/Lib/test/test_openpty.py
+++ b/Lib/test/test_openpty.py
@@ -10,6 +10,8 @@
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 e89d84f..f43b51c 100644
--- a/Lib/test/test_subprocess.py
+++ b/Lib/test/test_subprocess.py
@@ -806,7 +806,8 @@
self._testcase.assertNotIn(
fd, (p2cwrite, c2pread, errread))
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 6fe2fe5..9de3d78 100644
--- a/Lib/test/test_uuid.py
+++ b/Lib/test/test_uuid.py
@@ -448,6 +448,7 @@
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)