summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Wouters <thomas@python.org>2006-03-12 00:13:09 (GMT)
committerThomas Wouters <thomas@python.org>2006-03-12 00:13:09 (GMT)
commit318af47512176fed74a3d7e0e51cdb1347418a98 (patch)
treec2ab6bf2b9675582754522d7b5fd9445b9b333d4
parentb2820ae35546c20b04d3bfa64c7895f97dcf584e (diff)
downloadcpython-318af47512176fed74a3d7e0e51cdb1347418a98.zip
cpython-318af47512176fed74a3d7e0e51cdb1347418a98.tar.gz
cpython-318af47512176fed74a3d7e0e51cdb1347418a98.tar.bz2
Plug the last 657 referenceleaks in test_bsddb3: a circular reference
between a TestCase instance, the database it opened (or a cursor to a database) and a bound method as a registered database callback, and a lack of GC-handling in bsddb caused the TestCases to linger. Fix the test, for now, as backward compatibility makes adding GC to bsddb annoying.
-rw-r--r--Lib/bsddb/test/test_associate.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/Lib/bsddb/test/test_associate.py b/Lib/bsddb/test/test_associate.py
index 0015b53..05ef83c 100644
--- a/Lib/bsddb/test/test_associate.py
+++ b/Lib/bsddb/test/test_associate.py
@@ -105,6 +105,7 @@ class AssociateErrorTestCase(unittest.TestCase):
def tearDown(self):
self.env.close()
+ self.env = None
import glob
files = glob.glob(os.path.join(self.homeDir, '*'))
for file in files:
@@ -166,6 +167,7 @@ class AssociateTestCase(unittest.TestCase):
def tearDown(self):
self.closeDB()
self.env.close()
+ self.env = None
import glob
files = glob.glob(os.path.join(self.homeDir, '*'))
for file in files:
@@ -192,9 +194,12 @@ class AssociateTestCase(unittest.TestCase):
def closeDB(self):
if self.cur:
self.cur.close()
+ self.cur = None
if self.secDB:
self.secDB.close()
+ self.secDB = None
self.primary.close()
+ self.primary = None
def getDB(self):
return self.primary