blob: 94949cf6fcb93293eb078498ea6b23377eca5f8d [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
Roger E. Massefab8ab81996-12-20 22:36:52 +00007from test_support import verbose
8
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')
12d['a'] = 'b'
13d['12345678910'] = '019237410982340912840198242'
14d.keys()
Roger E. Massefab8ab81996-12-20 22:36:52 +000015if d.has_key('a'):
16 if verbose:
Guido van Rossum41360a41998-03-26 19:42:58 +000017 print 'Test dbm keys: ', d.keys()
Fred Drake57a4e902000-09-18 17:56:58 +000018
Roger E. Masse16f9fd21996-12-10 00:06:24 +000019d.close()
20d = dbm.open(filename, 'r')
21d.close()
22d = dbm.open(filename, 'rw')
23d.close()
24d = dbm.open(filename, 'w')
25d.close()
26d = dbm.open(filename, 'n')
27d.close()
28
29try:
30 import os
Fred Drake57a4e902000-09-18 17:56:58 +000031 if dbm.library == "ndbm":
32 # classic dbm
33 os.unlink(filename + '.dir')
34 os.unlink(filename + '.pag')
35 elif dbm.library == "BSD db":
36 # BSD DB's compatibility layer
37 os.unlink(filename + '.db')
38 else:
39 # GNU gdbm compatibility layer
40 os.unlink(filename)
Roger E. Masse16f9fd21996-12-10 00:06:24 +000041except:
42 pass