[Python-3000-checkins] r57590 - in python/branches/py3k/Lib: dumbdbm.py test/test_dumbdbm.py
guido.van.rossum
python-3000-checkins at python.org
Tue Aug 28 02:09:55 CEST 2007
Author: guido.van.rossum
Date: Tue Aug 28 02:09:54 2007
New Revision: 57590
Modified:
python/branches/py3k/Lib/dumbdbm.py
python/branches/py3k/Lib/test/test_dumbdbm.py
Log:
Make dumbdbm use bytes for keys consistently.
Modified: python/branches/py3k/Lib/dumbdbm.py
==============================================================================
--- python/branches/py3k/Lib/dumbdbm.py (original)
+++ python/branches/py3k/Lib/dumbdbm.py Tue Aug 28 02:09:54 2007
@@ -200,7 +200,11 @@
self._commit()
def keys(self):
- return self._index.keys()
+ return [key.encode("latin-1") for key in self._index.keys()]
+
+ def items(self):
+ return [(key.encode("latin-1"), self[key.encode("latin-1")])
+ for key in self._index.keys()]
def __contains__(self, key):
key = key.decode("latin-1")
Modified: python/branches/py3k/Lib/test/test_dumbdbm.py
==============================================================================
--- python/branches/py3k/Lib/test/test_dumbdbm.py (original)
+++ python/branches/py3k/Lib/test/test_dumbdbm.py Tue Aug 28 02:09:54 2007
@@ -102,7 +102,7 @@
f[b'1'] = b'hello2'
f.close()
f = dumbdbm.open(_fname)
- self.assertEqual(f['1'], b'hello2')
+ self.assertEqual(f[b'1'], b'hello2')
f.close()
def test_line_endings(self):
@@ -157,11 +157,11 @@
v = random.choice((b'a', b'b', b'c')) * random.randrange(10000)
d[k] = v
f[k.encode("ascii")] = v
- self.assertEqual(f[k], v)
+ self.assertEqual(f[k.encode("ascii")], v)
f.close()
f = dumbdbm.open(_fname)
- expected = sorted(d.items())
+ expected = sorted((k.encode("latin-1"), v) for k, v in d.items())
got = sorted(f.items())
self.assertEqual(expected, got)
f.close()
More information about the Python-3000-checkins
mailing list