bpo-37421: Fix test_shutil: don't leak temporary files (GH-14416)

* Fix typo in supports_file2file_sendfile(); ensure that dst is
  removed
* Fix test_copytree_custom_copy_function(): remove dst tree.
  Use support.rmtree() rather than shutil.rmtree() to remove
  temporary directories: support tries harder.
This commit is contained in:
Victor Stinner 2019-06-27 01:39:53 +02:00 committed by GitHub
parent 06a8916cf4
commit 4c26abd14f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 4 additions and 2 deletions

View File

@ -124,7 +124,7 @@ def supports_file2file_sendfile():
with open(srcname, "rb") as src:
with tempfile.NamedTemporaryFile("wb", delete=False) as dst:
dstname = f.name
dstname = dst.name
infd = src.fileno()
outfd = dst.fileno()
try:
@ -878,8 +878,9 @@ class TestShutil(unittest.TestCase):
flag = []
src = tempfile.mkdtemp()
self.addCleanup(support.rmtree, src)
dst = tempfile.mktemp()
self.addCleanup(shutil.rmtree, src)
self.addCleanup(support.rmtree, dst)
with open(os.path.join(src, 'foo'), 'w') as f:
f.close()
shutil.copytree(src, dst, copy_function=custom_cpfun)

View File

@ -0,0 +1 @@
Fix test_shutil to no longer leak temporary files.