diff options
author | Victor Stinner <vstinner@redhat.com> | 2019-06-26 23:39:53 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-06-26 23:39:53 (GMT) |
commit | 4c26abd14f1b7242998eb2f7756aa375e0fe714f (patch) | |
tree | 225f25e2989c063f9a34119748120d1e803ce44c | |
parent | 06a8916cf465f139dca958685b0da899364b8a8c (diff) | |
download | cpython-4c26abd14f1b7242998eb2f7756aa375e0fe714f.zip cpython-4c26abd14f1b7242998eb2f7756aa375e0fe714f.tar.gz cpython-4c26abd14f1b7242998eb2f7756aa375e0fe714f.tar.bz2 |
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.
-rw-r--r-- | Lib/test/test_shutil.py | 5 | ||||
-rw-r--r-- | Misc/NEWS.d/next/Tests/2019-06-27-00-37-59.bpo-37421.rVJb3x.rst | 1 |
2 files changed, 4 insertions, 2 deletions
diff --git a/Lib/test/test_shutil.py b/Lib/test/test_shutil.py index 208718b..e209607 100644 --- a/Lib/test/test_shutil.py +++ b/Lib/test/test_shutil.py @@ -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) diff --git a/Misc/NEWS.d/next/Tests/2019-06-27-00-37-59.bpo-37421.rVJb3x.rst b/Misc/NEWS.d/next/Tests/2019-06-27-00-37-59.bpo-37421.rVJb3x.rst new file mode 100644 index 0000000..9f40338 --- /dev/null +++ b/Misc/NEWS.d/next/Tests/2019-06-27-00-37-59.bpo-37421.rVJb3x.rst @@ -0,0 +1 @@ +Fix test_shutil to no longer leak temporary files. |