Roger E. Masse | 16f9fd2 | 1996-12-10 00:06:24 +0000 | [diff] [blame] | 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 |
Fredrik Lundh | f785042 | 2001-01-17 21:51:36 +0000 | [diff] [blame] | 7 | from test_support import verbose |
Roger E. Masse | fab8ab8 | 1996-12-20 22:36:52 +0000 | [diff] [blame] | 8 | |
Fred Drake | 57a4e90 | 2000-09-18 17:56:58 +0000 | [diff] [blame] | 9 | filename = '/tmp/delete_me' |
Roger E. Masse | 16f9fd2 | 1996-12-10 00:06:24 +0000 | [diff] [blame] | 10 | |
| 11 | d = dbm.open(filename, 'c') |
| 12 | d['a'] = 'b' |
| 13 | d['12345678910'] = '019237410982340912840198242' |
| 14 | d.keys() |
Roger E. Masse | fab8ab8 | 1996-12-20 22:36:52 +0000 | [diff] [blame] | 15 | if d.has_key('a'): |
| 16 | if verbose: |
Guido van Rossum | 41360a4 | 1998-03-26 19:42:58 +0000 | [diff] [blame] | 17 | print 'Test dbm keys: ', d.keys() |
Fred Drake | 57a4e90 | 2000-09-18 17:56:58 +0000 | [diff] [blame] | 18 | |
Roger E. Masse | 16f9fd2 | 1996-12-10 00:06:24 +0000 | [diff] [blame] | 19 | d.close() |
| 20 | d = dbm.open(filename, 'r') |
| 21 | d.close() |
| 22 | d = dbm.open(filename, 'rw') |
| 23 | d.close() |
| 24 | d = dbm.open(filename, 'w') |
| 25 | d.close() |
| 26 | d = dbm.open(filename, 'n') |
| 27 | d.close() |
| 28 | |
| 29 | try: |
| 30 | import os |
Fred Drake | 57a4e90 | 2000-09-18 17:56:58 +0000 | [diff] [blame] | 31 | 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. Masse | 16f9fd2 | 1996-12-10 00:06:24 +0000 | [diff] [blame] | 41 | except: |
| 42 | pass |