diff options
author | Brett Cannon <bcannon@gmail.com> | 2008-11-25 19:19:17 (GMT) |
---|---|---|
committer | Brett Cannon <bcannon@gmail.com> | 2008-11-25 19:19:17 (GMT) |
commit | 7317c1ef7aaba7deda66b7fa917d09e68d83635b (patch) | |
tree | 20de56e7bef3651ffbe837660673f76a1b54a1c5 /Lib | |
parent | 50d5a1c37324405104a097389515a0ef4f9705f3 (diff) | |
download | cpython-7317c1ef7aaba7deda66b7fa917d09e68d83635b.zip cpython-7317c1ef7aaba7deda66b7fa917d09e68d83635b.tar.gz cpython-7317c1ef7aaba7deda66b7fa917d09e68d83635b.tar.bz2 |
dbm.gnu and dbm.ndbm accept both strings and bytes as keys and values. For the
former they are converted to bytes before being written to the DB.
Closes issue 3799. Reviewed by Skip Montanaro.
Diffstat (limited to 'Lib')
-rw-r--r-- | Lib/test/test_dbm_dumb.py | 2 | ||||
-rwxr-xr-x | Lib/test/test_dbm_gnu.py | 2 | ||||
-rwxr-xr-x | Lib/test/test_dbm_ndbm.py | 2 |
3 files changed, 6 insertions, 0 deletions
diff --git a/Lib/test/test_dbm_dumb.py b/Lib/test/test_dbm_dumb.py index 940991d..e2964aa 100644 --- a/Lib/test/test_dbm_dumb.py +++ b/Lib/test/test_dbm_dumb.py @@ -115,11 +115,13 @@ class DumbDBMTestCase(unittest.TestCase): self.init_db() f = dumbdbm.open(_fname) f['\u00fc'] = b'!' + f['1'] = 'a' f.close() f = dumbdbm.open(_fname, 'r') self.assert_('\u00fc' in f) self.assertEqual(f['\u00fc'.encode('utf-8')], self._dict['\u00fc'.encode('utf-8')]) + self.assertEqual(f[b'1'], b'a') def test_line_endings(self): # test for bug #1172763: dumbdbm would die if the line endings diff --git a/Lib/test/test_dbm_gnu.py b/Lib/test/test_dbm_gnu.py index eddb970..0049aaa 100755 --- a/Lib/test/test_dbm_gnu.py +++ b/Lib/test/test_dbm_gnu.py @@ -20,9 +20,11 @@ class TestGdbm(unittest.TestCase): self.assertEqual(self.g.keys(), []) self.g['a'] = 'b' self.g['12345678910'] = '019237410982340912840198242' + self.g[b'bytes'] = b'data' key_set = set(self.g.keys()) self.assertEqual(key_set, set([b'a', b'12345678910'])) self.assert_(b'a' in self.g) + self.assertEqual(self.g[b'bytes'], b'data') key = self.g.firstkey() while key: self.assert_(key in key_set) diff --git a/Lib/test/test_dbm_ndbm.py b/Lib/test/test_dbm_ndbm.py index 74d3238..6d0a36d 100755 --- a/Lib/test/test_dbm_ndbm.py +++ b/Lib/test/test_dbm_ndbm.py @@ -20,9 +20,11 @@ class DbmTestCase(unittest.TestCase): self.d = dbm.ndbm.open(self.filename, 'c') self.assert_(self.d.keys() == []) self.d['a'] = 'b' + self.d[b'bytes'] = b'data' self.d['12345678910'] = '019237410982340912840198242' self.d.keys() self.assert_(b'a' in self.d) + self.assertEqual(self.d[b'bytes'], b'data') self.d.close() def test_modes(self): |