diff options
Diffstat (limited to 'Lib/test/test_dbm_ndbm.py')
-rw-r--r-- | Lib/test/test_dbm_ndbm.py | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/Lib/test/test_dbm_ndbm.py b/Lib/test/test_dbm_ndbm.py index f921167..49b88f5 100644 --- a/Lib/test/test_dbm_ndbm.py +++ b/Lib/test/test_dbm_ndbm.py @@ -36,6 +36,20 @@ class DbmTestCase(unittest.TestCase): self.assertEqual(self.d[b'xxx'], b'foo') self.d.close() + def test_empty_value(self): + if dbm.ndbm.library == 'Berkeley DB': + self.skipTest("Berkeley DB doesn't distinguish the empty value " + "from the absent one") + self.d = dbm.ndbm.open(self.filename, 'c') + self.assertEqual(self.d.keys(), []) + self.d['empty'] = '' + self.assertEqual(self.d.keys(), [b'empty']) + self.assertIn(b'empty', self.d) + self.assertEqual(self.d[b'empty'], b'') + self.assertEqual(self.d.get(b'empty'), b'') + self.assertEqual(self.d.setdefault(b'empty'), b'') + self.d.close() + def test_modes(self): for mode in ['r', 'rw', 'w', 'n']: try: |