diff options
author | Brett Cannon <bcannon@gmail.com> | 2008-03-18 01:50:25 (GMT) |
---|---|---|
committer | Brett Cannon <bcannon@gmail.com> | 2008-03-18 01:50:25 (GMT) |
commit | ba17cfc66c3ea90613a934704766147c7b8284a0 (patch) | |
tree | 606341b54f0d97921170681a6269bd50c8a2a374 /Lib/test/test_dbm.py | |
parent | 5de250e823f03e45cee3558b699f9e8b4404c347 (diff) | |
download | cpython-ba17cfc66c3ea90613a934704766147c7b8284a0.zip cpython-ba17cfc66c3ea90613a934704766147c7b8284a0.tar.gz cpython-ba17cfc66c3ea90613a934704766147c7b8284a0.tar.bz2 |
Convert test_dummy_threading and test_dbm to unittest.
Diffstat (limited to 'Lib/test/test_dbm.py')
-rwxr-xr-x | Lib/test/test_dbm.py | 82 |
1 files changed, 31 insertions, 51 deletions
diff --git a/Lib/test/test_dbm.py b/Lib/test/test_dbm.py index 6b57efb..562b14f 100755 --- a/Lib/test/test_dbm.py +++ b/Lib/test/test_dbm.py @@ -1,60 +1,40 @@ -#! /usr/bin/env python -"""Test script for the dbm module - Roger E. Masse -""" +from test import test_support +import unittest import os +import random import dbm from dbm import error -from test.test_support import verbose, verify, TestSkipped, TESTFN -# make filename unique to allow multiple concurrent tests -# and to minimize the likelihood of a problem from an old file -filename = TESTFN - -def cleanup(): - for suffix in ['', '.pag', '.dir', '.db']: - try: - os.unlink(filename + suffix) - except OSError, (errno, strerror): - # if we can't delete the file because of permissions, - # nothing will work, so skip the test - if errno == 1: - raise TestSkipped, 'unable to remove: ' + filename + suffix - -def test_keys(): - d = dbm.open(filename, 'c') - verify(d.keys() == []) - d['a'] = 'b' - d['12345678910'] = '019237410982340912840198242' - d.keys() - if d.has_key('a'): - if verbose: - print 'Test dbm keys: ', d.keys() - - d.close() - -def test_modes(): - d = dbm.open(filename, 'r') - d.close() - d = dbm.open(filename, 'rw') - d.close() - d = dbm.open(filename, 'w') - d.close() - d = dbm.open(filename, 'n') - d.close() +class DbmTestCase(unittest.TestCase): + + def setUp(self): + self.filename = test_support.TESTFN + self.d = dbm.open(self.filename, 'c') + self.d.close() + + def tearDown(self): + for suffix in ['', '.pag', '.dir', '.db']: + test_support.unlink(self.filename + suffix) + + def test_keys(self): + self.d = dbm.open(self.filename, 'c') + self.assert_(self.d.keys() == []) + self.d['a'] = 'b' + self.d['12345678910'] = '019237410982340912840198242' + self.d.keys() + self.assert_(self.d.has_key('a')) + self.d.close() + + def test_modes(self): + for mode in ['r', 'rw', 'w', 'n']: + try: + self.d = dbm.open(self.filename, mode) + self.d.close() + except dbm.error: + self.fail() def test_main(): - cleanup() - try: - test_keys() - test_modes() - except: - cleanup() - raise - - cleanup() - - + test_support.run_unittest(DbmTestCase) if __name__ == '__main__': test_main() |