diff options
| author | Jesus Cea <jcea@jcea.es> | 2008-08-31 14:00:51 (GMT) |
|---|---|---|
| committer | Jesus Cea <jcea@jcea.es> | 2008-08-31 14:00:51 (GMT) |
| commit | 4907d27c1fcc7bd990715d3023932433076e152f (patch) | |
| tree | f7e79e00d3e95785b6ff3d2d0b809e6d6e5e5779 /Lib/bsddb/test/test_dbtables.py | |
| parent | 82358691f77e33301df2916746474873b35ccafa (diff) | |
| download | cpython-4907d27c1fcc7bd990715d3023932433076e152f.zip cpython-4907d27c1fcc7bd990715d3023932433076e152f.tar.gz cpython-4907d27c1fcc7bd990715d3023932433076e152f.tar.bz2 | |
Update bsddb code to version 4.7.3pre2. This code should
be compatible with Python 3.0, also.
http://www.jcea.es/programacion/pybsddb.htm#bsddb3-4.7.3
Diffstat (limited to 'Lib/bsddb/test/test_dbtables.py')
| -rw-r--r-- | Lib/bsddb/test/test_dbtables.py | 70 |
1 files changed, 47 insertions, 23 deletions
diff --git a/Lib/bsddb/test/test_dbtables.py b/Lib/bsddb/test/test_dbtables.py index d750111..e655100 100644 --- a/Lib/bsddb/test/test_dbtables.py +++ b/Lib/bsddb/test/test_dbtables.py @@ -28,20 +28,8 @@ except ImportError: import pickle import unittest -from test_all import verbose, get_new_environment_path, get_new_database_path - -try: - # For Pythons w/distutils pybsddb - from bsddb3 import db, dbtables -except ImportError: - # For Python 2.3 - from bsddb import db, dbtables - -try: - from bsddb3 import test_support -except ImportError: - from test import test_support - +from test_all import db, dbtables, test_support, verbose, \ + get_new_environment_path, get_new_database_path #---------------------------------------------------------------------- @@ -49,12 +37,21 @@ class TableDBTestCase(unittest.TestCase): db_name = 'test-table.db' def setUp(self): + import sys + if sys.version_info[0] >= 3 : + from test_all import do_proxy_db_py3k + self._flag_proxy_db_py3k = do_proxy_db_py3k(False) + self.testHomeDir = get_new_environment_path() self.tdb = dbtables.bsdTableDB( filename='tabletest.db', dbhome=self.testHomeDir, create=1) def tearDown(self): self.tdb.close() + import sys + if sys.version_info[0] >= 3 : + from test_all import do_proxy_db_py3k + do_proxy_db_py3k(self._flag_proxy_db_py3k) test_support.rmtree(self.testHomeDir) def test01(self): @@ -65,7 +62,12 @@ class TableDBTestCase(unittest.TestCase): except dbtables.TableDBError: pass self.tdb.CreateTable(tabname, [colname]) - self.tdb.Insert(tabname, {colname: pickle.dumps(3.14159, 1)}) + import sys + if sys.version_info[0] < 3 : + self.tdb.Insert(tabname, {colname: pickle.dumps(3.14159, 1)}) + else : + self.tdb.Insert(tabname, {colname: pickle.dumps(3.14159, + 1).decode("iso8859-1")}) # 8 bits if verbose: self.tdb._db_print() @@ -73,7 +75,11 @@ class TableDBTestCase(unittest.TestCase): values = self.tdb.Select( tabname, [colname], conditions={colname: None}) - colval = pickle.loads(values[0][colname]) + import sys + if sys.version_info[0] < 3 : + colval = pickle.loads(values[0][colname]) + else : + colval = pickle.loads(bytes(values[0][colname], "iso8859-1")) self.assert_(colval > 3.141) self.assert_(colval < 3.142) @@ -83,11 +89,23 @@ class TableDBTestCase(unittest.TestCase): col0 = 'coolness factor' col1 = 'but can it fly?' col2 = 'Species' - testinfo = [ - {col0: pickle.dumps(8, 1), col1: 'no', col2: 'Penguin'}, - {col0: pickle.dumps(-1, 1), col1: 'no', col2: 'Turkey'}, - {col0: pickle.dumps(9, 1), col1: 'yes', col2: 'SR-71A Blackbird'} - ] + + import sys + if sys.version_info[0] < 3 : + testinfo = [ + {col0: pickle.dumps(8, 1), col1: 'no', col2: 'Penguin'}, + {col0: pickle.dumps(-1, 1), col1: 'no', col2: 'Turkey'}, + {col0: pickle.dumps(9, 1), col1: 'yes', col2: 'SR-71A Blackbird'} + ] + else : + testinfo = [ + {col0: pickle.dumps(8, 1).decode("iso8859-1"), + col1: 'no', col2: 'Penguin'}, + {col0: pickle.dumps(-1, 1).decode("iso8859-1"), + col1: 'no', col2: 'Turkey'}, + {col0: pickle.dumps(9, 1).decode("iso8859-1"), + col1: 'yes', col2: 'SR-71A Blackbird'} + ] try: self.tdb.Drop(tabname) @@ -97,8 +115,14 @@ class TableDBTestCase(unittest.TestCase): for row in testinfo : self.tdb.Insert(tabname, row) - values = self.tdb.Select(tabname, [col2], - conditions={col0: lambda x: pickle.loads(x) >= 8}) + import sys + if sys.version_info[0] < 3 : + values = self.tdb.Select(tabname, [col2], + conditions={col0: lambda x: pickle.loads(x) >= 8}) + else : + values = self.tdb.Select(tabname, [col2], + conditions={col0: lambda x: + pickle.loads(bytes(x, "iso8859-1")) >= 8}) self.assertEqual(len(values), 2) if values[0]['Species'] == 'Penguin' : |
