Merged release21-maint changes.
[python/dscho.git] / Lib / test / test_dbm.py
blobb74194a615c509c1e805e405cdd475fa72e7283d
1 #! /usr/bin/env python
2 """Test script for the dbm module
3 Roger E. Masse
4 """
5 import dbm
6 from dbm import error
7 from test_support import verbose, verify
9 filename = '/tmp/delete_me'
11 d = dbm.open(filename, 'c')
12 verify(d.keys() == [])
13 d['a'] = 'b'
14 d['12345678910'] = '019237410982340912840198242'
15 d.keys()
16 if d.has_key('a'):
17 if verbose:
18 print 'Test dbm keys: ', d.keys()
20 d.close()
21 d = dbm.open(filename, 'r')
22 d.close()
23 d = dbm.open(filename, 'rw')
24 d.close()
25 d = dbm.open(filename, 'w')
26 d.close()
27 d = dbm.open(filename, 'n')
28 d.close()
30 try:
31 import os
32 if dbm.library == "ndbm":
33 # classic dbm
34 os.unlink(filename + '.dir')
35 os.unlink(filename + '.pag')
36 elif dbm.library == "BSD db":
37 # BSD DB's compatibility layer
38 os.unlink(filename + '.db')
39 else:
40 # GNU gdbm compatibility layer
41 os.unlink(filename)
42 except:
43 pass