blob: b74194a615c509c1e805e405cdd475fa72e7283d [file] [log] [blame]
Roger E. Masse16f9fd21996-12-10 00:06:24 +00001#! /usr/bin/env python
2"""Test script for the dbm module
3 Roger E. Masse
4"""
5import dbm
6from dbm import error
Guido van Rossumf6e47ad2001-03-22 00:40:23 +00007from test_support import verbose, verify
Roger E. Massefab8ab81996-12-20 22:36:52 +00008
Fred Drake57a4e902000-09-18 17:56:58 +00009filename = '/tmp/delete_me'
Roger E. Masse16f9fd21996-12-10 00:06:24 +000010
11d = dbm.open(filename, 'c')
Guido van Rossumf6e47ad2001-03-22 00:40:23 +000012verify(d.keys() == [])
Roger E. Masse16f9fd21996-12-10 00:06:24 +000013d['a'] = 'b'
14d['12345678910'] = '019237410982340912840198242'
15d.keys()
Roger E. Massefab8ab81996-12-20 22:36:52 +000016if d.has_key('a'):
17 if verbose:
Guido van Rossum41360a41998-03-26 19:42:58 +000018 print 'Test dbm keys: ', d.keys()
Fred Drake57a4e902000-09-18 17:56:58 +000019
Roger E. Masse16f9fd21996-12-10 00:06:24 +000020d.close()
21d = dbm.open(filename, 'r')
22d.close()
23d = dbm.open(filename, 'rw')
24d.close()
25d = dbm.open(filename, 'w')
26d.close()
27d = dbm.open(filename, 'n')
28d.close()
29
30try:
31 import os
Fred Drake57a4e902000-09-18 17:56:58 +000032 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)
Roger E. Masse16f9fd21996-12-10 00:06:24 +000042except:
43 pass