diff options
Diffstat (limited to 'Lib/bsddb/test/test_recno.py')
-rw-r--r-- | Lib/bsddb/test/test_recno.py | 52 |
1 files changed, 35 insertions, 17 deletions
diff --git a/Lib/bsddb/test/test_recno.py b/Lib/bsddb/test/test_recno.py index d332497388..3191fdce74 100644 --- a/Lib/bsddb/test/test_recno.py +++ b/Lib/bsddb/test/test_recno.py @@ -1,7 +1,7 @@ """TestCases for exercising a Recno DB. """ -import os +import os, sys import errno from pprint import pprint import unittest @@ -14,10 +14,19 @@ letters = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ' #---------------------------------------------------------------------- class SimpleRecnoTestCase(unittest.TestCase): - import sys - if sys.version_info[:3] < (2, 4, 0): - def assertFalse(self, expr, msg=None): - self.failIf(expr,msg=msg) + if sys.version_info < (2, 4) : + def assertFalse(self, expr, msg=None) : + return self.failIf(expr,msg=msg) + def assertTrue(self, expr, msg=None) : + return self.assertTrue(expr, msg=msg) + + if (sys.version_info < (2, 7)) or ((sys.version_info >= (3, 0)) and + (sys.version_info < (3, 2))) : + def assertIsInstance(self, obj, datatype, msg=None) : + return self.assertEqual(type(obj), datatype, msg=msg) + def assertGreaterEqual(self, a, b, msg=None) : + return self.assertTrue(a>=b, msg=msg) + def setUp(self): self.filename = get_new_database_path() @@ -38,8 +47,8 @@ class SimpleRecnoTestCase(unittest.TestCase): for x in letters: recno = d.append(x * 60) - self.assertTrue(isinstance(recno, int)) - self.assertTrue(recno >= 1) + self.assertIsInstance(recno, int) + self.assertGreaterEqual(recno, 1) if verbose: print recno, @@ -54,13 +63,16 @@ class SimpleRecnoTestCase(unittest.TestCase): if verbose: print data - self.assertTrue(isinstance(data, str)) + self.assertIsInstance(data, str) self.assertEqual(data, d.get(recno)) try: data = d[0] # This should raise a KeyError!?!?! except db.DBInvalidArgError, val: - self.assertEqual(val.args[0], db.EINVAL) + if sys.version_info < (2, 6) : + self.assertEqual(val[0], db.EINVAL) + else : + self.assertEqual(val.args[0], db.EINVAL) if verbose: print val else: self.fail("expected exception") @@ -91,18 +103,18 @@ class SimpleRecnoTestCase(unittest.TestCase): keys = d.keys() if verbose: print keys - self.assertTrue(isinstance(keys, list)) - self.assertTrue(isinstance(keys[0], int)) + self.assertIsInstance(keys, list) + self.assertIsInstance(keys[0], int) self.assertEqual(len(keys), len(d)) items = d.items() if verbose: pprint(items) - self.assertTrue(isinstance(items, list)) - self.assertTrue(isinstance(items[0], tuple)) + self.assertIsInstance(items, list) + self.assertIsInstance(items[0], tuple) self.assertEqual(len(items[0]), 2) - self.assertTrue(isinstance(items[0][0], int)) - self.assertTrue(isinstance(items[0][1], str)) + self.assertIsInstance(items[0][0], int) + self.assertIsInstance(items[0][1], str) self.assertEqual(len(items), len(d)) self.assertTrue(d.has_key(25)) @@ -177,7 +189,10 @@ class SimpleRecnoTestCase(unittest.TestCase): if get_returns_none: self.fail("unexpected DBKeyEmptyError exception") else: - self.assertEqual(val.args[0], db.DB_KEYEMPTY) + if sys.version_info < (2, 6) : + self.assertEqual(val[0], db.DB_KEYEMPTY) + else : + self.assertEqual(val.args[0], db.DB_KEYEMPTY) if verbose: print val else: if not get_returns_none: @@ -265,7 +280,10 @@ class SimpleRecnoTestCase(unittest.TestCase): try: # this one will fail d.append('bad' * 20) except db.DBInvalidArgError, val: - self.assertEqual(val.args[0], db.EINVAL) + if sys.version_info < (2, 6) : + self.assertEqual(val[0], db.EINVAL) + else : + self.assertEqual(val.args[0], db.EINVAL) if verbose: print val else: self.fail("expected exception") |