Fix the bsddb3 unit tests.
This essentially meant fixing one case where a list of custom objects was being sorted, and fixing one genuine bug where a method call was missing parentheses.
This commit is contained in:
parent
19960597ad
commit
e4ef3a6e6c
|
@ -697,7 +697,7 @@ class BasicTransactionTestCase(BasicTestCase):
|
|||
for log in logs:
|
||||
if verbose:
|
||||
print 'log file: ' + log
|
||||
if db.version >= (4,2):
|
||||
if db.version() >= (4,2):
|
||||
logs = self.env.log_archive(db.DB_ARCH_REMOVE)
|
||||
assert not logs
|
||||
|
||||
|
|
|
@ -23,11 +23,24 @@ from .test_all import verbose
|
|||
# We want the objects to be comparable so we can test dbshelve.values
|
||||
# later on.
|
||||
class DataClass:
|
||||
|
||||
def __init__(self):
|
||||
self.value = random.random()
|
||||
|
||||
def __cmp__(self, other):
|
||||
return cmp(self.value, other)
|
||||
def __repr__(self):
|
||||
return "DataClass(%r)" % self.value
|
||||
|
||||
def __eq__(self, other):
|
||||
value = self.value
|
||||
if isinstance(other, DataClass):
|
||||
other = other.value
|
||||
return value == other
|
||||
|
||||
def __lt__(self, other):
|
||||
value = self.value
|
||||
if isinstance(other, DataClass):
|
||||
other = other.value
|
||||
return value < other
|
||||
|
||||
class DBShelveTestCase(unittest.TestCase):
|
||||
def setUp(self):
|
||||
|
@ -103,11 +116,10 @@ class DBShelveTestCase(unittest.TestCase):
|
|||
print "%s: %s" % (key, value)
|
||||
self.checkrec(key, value)
|
||||
|
||||
dbvalues = d.values()
|
||||
dbvalues = sorted(d.values(), key=lambda x: (str(type(x)), x))
|
||||
assert len(dbvalues) == len(d.keys())
|
||||
values.sort()
|
||||
dbvalues.sort()
|
||||
assert values == dbvalues
|
||||
values.sort(key=lambda x: (str(type(x)), x))
|
||||
assert values == dbvalues, "%r != %r" % (values, dbvalues)
|
||||
|
||||
items = d.items()
|
||||
assert len(items) == len(values)
|
||||
|
|
Loading…
Reference in New Issue