cpython/Lib/test/test_dbm.py

44 lines
900 B
Python
Executable File

#! /usr/bin/env python
"""Test script for the dbm module
Roger E. Masse
"""
import dbm
from dbm import error
from test.test_support import verbose, verify
filename = '/tmp/delete_me'
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()
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()
try:
import os
if dbm.library == "ndbm":
# classic dbm
os.unlink(filename + '.dir')
os.unlink(filename + '.pag')
elif dbm.library == "BSD db":
# BSD DB's compatibility layer
os.unlink(filename + '.db')
else:
# GNU gdbm compatibility layer
os.unlink(filename)
except:
pass