mirror of
https://github.com/python/cpython.git
synced 2025-09-14 12:46:49 +00:00

features in BerkeleyDB not exposed. notably: the DB_MPOOLFILE interface has not yet been wrapped in an object. Adds support for building and installing bsddb3 in python2.3 that has an older version of this module installed as bsddb without conflicts. The pybsddb.sf.net build/packaged version of the module uses a dynamicly loadable module called _pybsddb rather than _bsddb.
81 lines
1.8 KiB
Python
81 lines
1.8 KiB
Python
"""Run all test cases.
|
|
"""
|
|
|
|
import sys
|
|
import os
|
|
import unittest
|
|
|
|
verbose = 0
|
|
if 'verbose' in sys.argv:
|
|
verbose = 1
|
|
sys.argv.remove('verbose')
|
|
|
|
if 'silent' in sys.argv: # take care of old flag, just in case
|
|
verbose = 0
|
|
sys.argv.remove('silent')
|
|
|
|
|
|
def print_versions():
|
|
try:
|
|
# For Pythons w/distutils pybsddb
|
|
from bsddb3 import db
|
|
except ImportError:
|
|
# For Python 2.3
|
|
from bsddb import db
|
|
print
|
|
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 'My pid: %s' % os.getpid()
|
|
print '-=' * 38
|
|
|
|
|
|
class PrintInfoFakeTest(unittest.TestCase):
|
|
def testPrintVersions(self):
|
|
print_versions()
|
|
|
|
|
|
# This little hack is for when this module is run as main and all the
|
|
# other modules import it so they will still be able to get the right
|
|
# verbose setting. It's confusing but it works.
|
|
import test_all
|
|
test_all.verbose = verbose
|
|
|
|
|
|
def suite():
|
|
test_modules = [
|
|
'test_associate',
|
|
'test_basics',
|
|
'test_compat',
|
|
'test_dbobj',
|
|
'test_dbshelve',
|
|
'test_dbtables',
|
|
'test_env_close',
|
|
'test_get_none',
|
|
'test_join',
|
|
'test_lock',
|
|
'test_misc',
|
|
'test_queue',
|
|
'test_recno',
|
|
'test_thread',
|
|
]
|
|
|
|
alltests = unittest.TestSuite()
|
|
for name in test_modules:
|
|
module = __import__(name)
|
|
alltests.addTest(module.suite())
|
|
return alltests
|
|
|
|
|
|
def test_suite():
|
|
suite = unittest.TestSuite()
|
|
suite.addTest(unittest.makeSuite(PrintInfoFakeTest))
|
|
return suite
|
|
|
|
|
|
if __name__ == '__main__':
|
|
print_versions()
|
|
unittest.main(defaultTest='suite')
|