cpython/Lib/test/test_gdbm.py

47 lines
855 B
Python
Executable File

#! /usr/bin/env python
"""Test script for the gdbm module
Roger E. Masse
"""
import gdbm
from gdbm import error
from test.test_support import verbose, verify, TestFailed, TESTFN
filename = TESTFN
g = gdbm.open(filename, 'c')
verify(g.keys() == [])
g[b'a'] = b'b'
g[b'12345678910'] = b'019237410982340912840198242'
a = g.keys()
if verbose:
print('Test gdbm file keys: ', a)
b'a' in g
g.close()
try:
g['a']
except error:
pass
else:
raise TestFailed, "expected gdbm.error accessing closed database"
g = gdbm.open(filename, 'r')
g.close()
g = gdbm.open(filename, 'w')
g.close()
g = gdbm.open(filename, 'n')
g.close()
try:
g = gdbm.open(filename, 'rx')
g.close()
except error:
pass
else:
raise TestFailed, "expected gdbm.error when passing invalid open flags"
try:
import os
os.unlink(filename)
except:
pass