diff options
author | Victor Stinner <victor.stinner@haypocalc.com> | 2010-03-13 03:27:07 +0000 |
---|---|---|
committer | Victor Stinner <victor.stinner@haypocalc.com> | 2010-03-13 03:27:07 +0000 |
commit | 6e055d78e16c0af28a35fbad53b99d8be59e1ea3 (patch) | |
tree | 1d99c02d8b2a88d0e78940a695ff1a73487235b5 /Lib/sqlite3/test/regression.py | |
parent | 93dd9b808ec306723878b94dd9b8ab0748e4f1ec (diff) | |
download | cpython-git-6e055d78e16c0af28a35fbad53b99d8be59e1ea3.tar.gz |
sqlite3: Fix a segfault on calling a connection with something else than a
string. Initialize all attributes to be able to call the statement destructor
on error.
Avoid also a duplicate connection in some tests: setUp() does already open a
connection (":memory:").
Diffstat (limited to 'Lib/sqlite3/test/regression.py')
-rw-r--r-- | Lib/sqlite3/test/regression.py | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/Lib/sqlite3/test/regression.py b/Lib/sqlite3/test/regression.py index 85eb3b4fd7..1030061199 100644 --- a/Lib/sqlite3/test/regression.py +++ b/Lib/sqlite3/test/regression.py @@ -232,8 +232,7 @@ class RegressionTests(unittest.TestCase): Verifies that running a PRAGMA statement that does an autocommit does work. This did not work in 2.5.3/2.5.4. """ - con = sqlite.connect(":memory:") - cur = con.cursor() + cur = self.con.cursor() cur.execute("create table foo(bar)") cur.execute("insert into foo(bar) values (5)") @@ -253,11 +252,17 @@ class RegressionTests(unittest.TestCase): def __hash__(self): raise TypeError() var = NotHashable() - con = sqlite.connect(":memory:") - self.assertRaises(TypeError, con.create_function, var) - self.assertRaises(TypeError, con.create_aggregate, var) - self.assertRaises(TypeError, con.set_authorizer, var) - self.assertRaises(TypeError, con.set_progress_handler, var) + self.assertRaises(TypeError, self.con.create_function, var) + self.assertRaises(TypeError, self.con.create_aggregate, var) + self.assertRaises(TypeError, self.con.set_authorizer, var) + self.assertRaises(TypeError, self.con.set_progress_handler, var) + + def CheckConnectionCall(self): + """ + Call a connection with a non-string SQL request: check error handling + of the statement constructor. + """ + self.assertRaises(sqlite.Warning, self.con, 1) def suite(): regression_suite = unittest.makeSuite(RegressionTests, "Check") |