]> granicus.if.org Git - python/commitdiff
Packaging tests: don’t let an internal cache grow indefinitely.
authorÉric Araujo <merwok@netwok.org>
Fri, 17 Jun 2011 13:43:18 +0000 (15:43 +0200)
committerÉric Araujo <merwok@netwok.org>
Fri, 17 Jun 2011 13:43:18 +0000 (15:43 +0200)
Victor Stinner diagnosed on #12167 that some reference leaks came from
util._path_created, a set used for caching; there are two tests that
cause additions to this set, so now they clear it in tearDown, avoiding
17 refleaks.  (My tests show that it’s necessary to clear the set in
only one test, clearing it in both does not stop more refleaks, but
there’s no harm in doing it.)

Lib/packaging/tests/test_command_bdist_dumb.py
Lib/packaging/tests/test_uninstall.py

index fd199ea932e0aa10024f36737b95aff4fef6b2f2..25f3276b0c88fbbd45fe758d7e6d9019ea36ec85 100644 (file)
@@ -1,6 +1,7 @@
 """Tests for distutils.command.bdist_dumb."""
 
 import os
+import packaging.util
 
 from packaging.dist import Distribution
 from packaging.command.bdist_dumb import bdist_dumb
@@ -18,6 +19,7 @@ class BuildDumbTestCase(support.TempdirManager,
 
     def tearDown(self):
         os.chdir(self.old_location)
+        packaging.util._path_created.clear()
         super(BuildDumbTestCase, self).tearDown()
 
     @requires_zlib
index 00e97e4c70075f1a8135f9c57927af4260588e23..0ef7f3be90bac646ab19f8e7543dd7c3b1554067 100644 (file)
@@ -3,6 +3,7 @@ import os
 import sys
 from io import StringIO
 import stat
+import packaging.util
 
 from packaging.database import disable_cache, enable_cache
 from packaging.run import main
@@ -43,6 +44,7 @@ class UninstallTestCase(support.TempdirManager,
 
     def tearDown(self):
         os.chdir(self.cwd)
+        packaging.util._path_created.clear()
         super(UninstallTestCase, self).tearDown()
 
     def run_setup(self, *args):