]> granicus.if.org Git - python/commitdiff
Back port of r57286 from py3k and trunk
authorGregory P. Smith <greg@mad-scientist.com>
Thu, 23 Aug 2007 05:05:12 +0000 (05:05 +0000)
committerGregory P. Smith <greg@mad-scientist.com>
Thu, 23 Aug 2007 05:05:12 +0000 (05:05 +0000)
  ------------------------------------------------------------------------
  r57286 | gregory.p.smith | 2007-08-22 14:32:34 -0700 (Wed, 22 Aug 2007) | 3 lines

  stop leaving log.0000001 __db.00* and xxx.db turds in developer
  sandboxes when bsddb3 tests are run.

Lib/bsddb/test/test_1413192.py

index 436f407867d6a7f517446da9f6da8df6e3b793ce..dd49bdf68c854af2bd2f1ec6bbdb2b32749f3890 100644 (file)
@@ -4,6 +4,8 @@
 # This test relies on the variable names, see the bug report for details.
 # The problem was that the env was deallocated prior to the txn.
 
+import shutil
+import tempfile
 try:
     # For Pythons w/distutils and add-on pybsddb
     from bsddb3 import db
@@ -11,7 +13,7 @@ except ImportError:
     # For Python >= 2.3 builtin bsddb distribution
     from bsddb import db
 
-env_name = '.'
+env_name = tempfile.mkdtemp()
 
 env = db.DBEnv()
 env.open(env_name, db.DB_CREATE | db.DB_INIT_TXN | db.DB_INIT_MPOOL)
@@ -19,3 +21,9 @@ the_txn = env.txn_begin()
 
 map = db.DB(env)
 map.open('xxx.db', "p", db.DB_HASH, db.DB_CREATE, 0666, txn=the_txn)
+
+# try not to leave a turd (won't help Windows since files are still open)
+try:
+    shutil.rmtree(env_name)
+except EnvironmentError:
+    pass