[Checkins] SVN: BTrees/branches/py3k/ Avoid 'has_key' usage; test it only under Python2.
Tres Seaver
cvs-admin at zope.org
Mon Dec 10 22:30:12 UTC 2012
Log message for revision 128572:
Avoid 'has_key' usage; test it only under Python2.
Changed:
_U BTrees/branches/py3k/
U BTrees/branches/py3k/BTrees/_compat.py
U BTrees/branches/py3k/BTrees/tests/common.py
U BTrees/branches/py3k/BTrees/tests/testBTreesUnicode.py
U BTrees/branches/py3k/BTrees/tests/testConflict.py
-=-
Modified: BTrees/branches/py3k/BTrees/_compat.py
===================================================================
--- BTrees/branches/py3k/BTrees/_compat.py 2012-12-10 22:30:11 UTC (rev 128571)
+++ BTrees/branches/py3k/BTrees/_compat.py 2012-12-10 22:30:11 UTC (rev 128572)
@@ -15,6 +15,9 @@
if sys.version_info[0] < 3: #pragma NO COVER Python2
+ PY2 = True
+ PY3 = False
+
from StringIO import StringIO
BytesIO = StringIO
@@ -29,6 +32,9 @@
else: #pragma NO COVER Python3
+ PY2 = False
+ PY3 = True
+
from io import StringIO
from io import BytesIO
Modified: BTrees/branches/py3k/BTrees/tests/common.py
===================================================================
--- BTrees/branches/py3k/BTrees/tests/common.py 2012-12-10 22:30:11 UTC (rev 128571)
+++ BTrees/branches/py3k/BTrees/tests/common.py 2012-12-10 22:30:11 UTC (rev 128572)
@@ -251,9 +251,11 @@
self.assertEqual(len(t) , len(addl), len(t))
def testHasKeyWorks(self):
+ from .._compat import PY2
t = self._makeOne()
t[1] = 1
- self.assert_(t.has_key(1))
+ if PY2:
+ self.assert_(t.has_key(1))
self.assert_(1 in t)
self.assert_(0 not in t)
self.assert_(2 not in t)
@@ -830,7 +832,7 @@
r = range(100)
for x in r:
k = random.choice(r)
- if not added.has_key(k):
+ if k not in added:
t[k] = x
added[k] = 1
addl = sorted(added.keys())
@@ -864,15 +866,15 @@
deleted = []
for x in r:
k = random.choice(r)
- if t.has_key(k):
+ if k in t:
self.assert_(k in t)
del t[k]
deleted.append(k)
- if t.has_key(k):
+ if k in t:
self.fail( "had problems deleting %s" % k )
badones = []
for x in deleted:
- if t.has_key(x):
+ if x in t:
badones.append(x)
self.assertEqual(badones , [], (badones, added, deleted))
self._checkIt(t)
@@ -959,9 +961,10 @@
for x in add_order:
t[x] = 1
for x in delete_order:
- try: del t[x]
+ try:
+ del t[x]
except KeyError:
- if t.has_key(x):
+ if x in t:
self.assertEqual(1,2,"failed to delete %s" % x)
self._checkIt(t)
@@ -1073,19 +1076,23 @@
self.assertEqual(t.add(5) , 0)
def testInsert(self):
+ from .._compat import PY2
t = self._makeOne()
t.insert(1)
- self.assert_(t.has_key(1))
+ if PY2:
+ self.assert_(t.has_key(1))
self.assert_(1 in t)
self.assert_(2 not in t)
def testBigInsert(self):
+ from .._compat import PY2
t = self._makeOne()
r = xrange(10000)
for x in r:
t.insert(x)
for x in r:
- self.assert_(t.has_key(x))
+ if PY2:
+ self.assert_(t.has_key(x))
self.assert_(x in t)
def testRemoveSucceeds(self):
@@ -1101,8 +1108,10 @@
self._makeOne().remove(1)
def testHasKeyFails(self):
+ from .._compat import PY2
t = self._makeOne()
- self.assert_(not t.has_key(1))
+ if PY2:
+ self.assert_(not t.has_key(1))
self.assert_(1 not in t)
def testKeys(self):
Modified: BTrees/branches/py3k/BTrees/tests/testBTreesUnicode.py
===================================================================
--- BTrees/branches/py3k/BTrees/tests/testBTreesUnicode.py 2012-12-10 22:30:11 UTC (rev 128571)
+++ BTrees/branches/py3k/BTrees/tests/testBTreesUnicode.py 2012-12-10 22:30:11 UTC (rev 128572)
@@ -52,7 +52,7 @@
for k, v in self.data:
if isinstance(k, str):
k = unicode(k, encoding)
- self.assert_(self.tree.has_key(k))
+ self.assertTrue(k in self.tree)
self.assertEqual(self.tree[k], v)
@_skip_under_Py3k
Modified: BTrees/branches/py3k/BTrees/tests/testConflict.py
===================================================================
--- BTrees/branches/py3k/BTrees/tests/testConflict.py 2012-12-10 22:30:11 UTC (rev 128571)
+++ BTrees/branches/py3k/BTrees/tests/testConflict.py 2012-12-10 22:30:11 UTC (rev 128572)
@@ -136,7 +136,7 @@
numtoadd = 16
candidate = 60
while numtoadd:
- if not b.has_key(candidate):
+ if candidate not in b:
b[candidate] = candidate
numtoadd -= 1
candidate += 1
More information about the checkins
mailing list