bpo-18174: Fix file descriptor leaks in tests (GH-7408)
* test_tempfile.test_no_leak_fd() mocks os.close() but it doesn't call the original os.close() method and so leaks an open file descriptor. Fix the test by calling the original os.close() function. * test_posix.test_fdopen_directory(): close the directory file descriptor when the test completes.
This commit is contained in:
parent
146351860a
commit
270581905c
|
@ -199,6 +199,7 @@ class PosixTester(unittest.TestCase):
|
||||||
def test_fdopen_directory(self):
|
def test_fdopen_directory(self):
|
||||||
try:
|
try:
|
||||||
fd = os.open('.', os.O_RDONLY)
|
fd = os.open('.', os.O_RDONLY)
|
||||||
|
self.addCleanup(os.close, fd)
|
||||||
except OSError as e:
|
except OSError as e:
|
||||||
self.assertEqual(e.errno, errno.EACCES)
|
self.assertEqual(e.errno, errno.EACCES)
|
||||||
self.skipTest("system cannot open directories")
|
self.skipTest("system cannot open directories")
|
||||||
|
|
|
@ -821,6 +821,7 @@ class test_NamedTemporaryFile(TC):
|
||||||
old_fdopen = os.fdopen
|
old_fdopen = os.fdopen
|
||||||
closed = []
|
closed = []
|
||||||
def close(fd):
|
def close(fd):
|
||||||
|
old_close(fd)
|
||||||
closed.append(fd)
|
closed.append(fd)
|
||||||
def fdopen(*args):
|
def fdopen(*args):
|
||||||
raise ValueError()
|
raise ValueError()
|
||||||
|
|
Loading…
Reference in New Issue