Discussion:
[Python-3000-checkins] r66131 - python/branches/py3k/Lib/test/test_bsddb3.py
jesus.cea
2008-09-02 00:06:23 UTC
Permalink
Author: jesus.cea
Date: Tue Sep 2 02:06:22 2008
New Revision: 66131

Log:
Port Python 2.6 bsddb3 testdriver to Python 3.0

Modified:
python/branches/py3k/Lib/test/test_bsddb3.py

Modified: python/branches/py3k/Lib/test/test_bsddb3.py
==============================================================================
--- python/branches/py3k/Lib/test/test_bsddb3.py (original)
+++ python/branches/py3k/Lib/test/test_bsddb3.py Tue Sep 2 02:06:22 2008
@@ -14,13 +14,13 @@
if __name__ != '__main__':
requires('bsddb')

-import bsddb.test.test_all
+verbose = False
if 'verbose' in sys.argv:
- bsddb.test.test_all.verbose = 1
+ verbose = True
sys.argv.remove('verbose')

if 'silent' in sys.argv: # take care of old flag, just in case
- bsddb.test.test_all.verbose = 0
+ verbose = False
sys.argv.remove('silent')


@@ -48,66 +48,29 @@
sys.__stdout__.flush()


-def suite():
- try:
- # this is special, it used to segfault the interpreter
- import bsddb.test.test_1413192
- finally:
- for f in ['xxx.db','__db.001','__db.002','__db.003','log.0000000001']:
- unlink(f)
-
- test_modules = [
- 'test_associate',
- 'test_basics',
- 'test_compat',
- 'test_compare',
- 'test_dbobj',
- 'test_dbshelve',
- 'test_dbtables',
- 'test_env_close',
- 'test_get_none',
- 'test_join',
- 'test_lock',
- 'test_misc',
- 'test_pickle',
- 'test_queue',
- 'test_recno',
- 'test_thread',
- 'test_sequence',
- 'test_cursor_pget_bug',
- ]
-
- alltests = unittest.TestSuite()
- for name in test_modules:
- module = __import__("bsddb.test."+name, globals(), locals(), name)
- #print module,name
- alltests.addTest(module.test_suite())
- alltests.addTest(unittest.makeSuite(TimingCheck))
- return alltests
-
-
# For invocation through regrtest
def test_main():
- run_unittest(suite())
- db_home = os.path.join(tempfile.gettempdir(), 'db_home')
- # The only reason to remove db_home is in case if there is an old
- # one lying around. This might be by a different user, so just
- # ignore errors. We should always make a unique name now.
+ from bsddb import db
+ from bsddb.test import test_all
+ test_all.set_test_path_prefix(os.path.join(tempfile.gettempdir(),
+ 'z-test_bsddb3-%s' %
+ os.getpid()))
+ # Please leave this print in, having this show up in the buildbots
+ # makes diagnosing problems a lot easier.
+ print(db.DB_VERSION_STRING, file=sys.stderr)
+ print('Test path prefix: ', test_all.get_test_path_prefix(), file=sys.stderr)
try:
- rmtree(db_home)
- except:
- pass
- rmtree('db_home%d' % os.getpid())
+ run_unittest(test_all.suite(module_prefix='bsddb.test.',
+ timing_check=TimingCheck))
+ finally:
+ # The only reason to remove db_home is in case if there is an old
+ # one lying around. This might be by a different user, so just
+ # ignore errors. We should always make a unique name now.
+ try:
+ test_all.remove_test_path_directory()
+ except:
+ pass

-# For invocation as a script
-if __name__ == '__main__':
- from bsddb import db
- print('-=' * 38)
- print(db.DB_VERSION_STRING)
- print('bsddb.db.version(): %s' % (db.version(),))
- print('bsddb.db.__version__: %s' % db.__version__)
- print('bsddb.db.cvsid: %s' % db.cvsid)
- print('python version: %s' % sys.version)
- print('-=' * 38)

+if __name__ == '__main__':
test_main()

Loading...