Fix obvious problems from switch to dict views. Some tests still fail over

some reference count issue (I think).
This commit is contained in:
Brett Cannon 2007-02-22 06:12:19 +00:00
parent c7e9d74655
commit 5b8d24a7f7
1 changed files with 5 additions and 6 deletions

View File

@ -94,7 +94,7 @@ class TestBSDDB(unittest.TestCase):
if not hasattr(self.f, 'iteritems'): if not hasattr(self.f, 'iteritems'):
return return
di = self.d.items() di = iter(self.d.items())
while 1: while 1:
try: try:
k, v = di.next() k, v = di.next()
@ -105,7 +105,7 @@ class TestBSDDB(unittest.TestCase):
# it should behave the same as a dict. modifying values # it should behave the same as a dict. modifying values
# of existing keys should not break iteration. (adding # of existing keys should not break iteration. (adding
# or removing keys should) # or removing keys should)
fi = self.f.items() fi = iter(self.f.items())
while 1: while 1:
try: try:
k, v = fi.next() k, v = fi.next()
@ -159,7 +159,7 @@ class TestBSDDB(unittest.TestCase):
# test the iterator interface (if present) # test the iterator interface (if present)
if hasattr(self.f, 'iteritems'): if hasattr(self.f, 'iteritems'):
if debug: print("D") if debug: print("D")
i = self.f.items() i = iter(self.f.items())
k,v = i.next() k,v = i.next()
if debug: print("E") if debug: print("E")
self.f[k] = "please don't deadlock" self.f[k] = "please don't deadlock"
@ -198,7 +198,7 @@ class TestBSDDB(unittest.TestCase):
# do the bsddb._DBWithCursor _iter_mixin internals leak cursors? # do the bsddb._DBWithCursor _iter_mixin internals leak cursors?
nc1 = len(self.f._cursor_refs) nc1 = len(self.f._cursor_refs)
# create iterator # create iterator
i = self.f.items() i = iter(self.f.items())
nc2 = len(self.f._cursor_refs) nc2 = len(self.f._cursor_refs)
# use the iterator (should run to the first yeild, creating the cursor) # use the iterator (should run to the first yeild, creating the cursor)
k, v = i.next() k, v = i.next()
@ -246,8 +246,7 @@ class TestBSDDB(unittest.TestCase):
def test_keyordering(self): def test_keyordering(self):
if self.openmethod[0] is not bsddb.btopen: if self.openmethod[0] is not bsddb.btopen:
return return
keys = self.d.keys() keys = sorted(self.d.keys())
keys.sort()
self.assertEqual(self.f.first()[0], keys[0]) self.assertEqual(self.f.first()[0], keys[0])
self.assertEqual(self.f.next()[0], keys[1]) self.assertEqual(self.f.next()[0], keys[1])
self.assertEqual(self.f.last()[0], keys[-1]) self.assertEqual(self.f.last()[0], keys[-1])