bpo-37406: sqlite3 raises TypeError for wrong operation type (GH-14386)
The sqlite3 module now raises TypeError, rather than ValueError, if
operation argument type is not str: execute(), executemany() and
calling a connection.
diff --git a/Lib/sqlite3/test/dbapi.py b/Lib/sqlite3/test/dbapi.py
index 7c259d2..be11337 100644
--- a/Lib/sqlite3/test/dbapi.py
+++ b/Lib/sqlite3/test/dbapi.py
@@ -230,7 +230,7 @@
""")
def CheckExecuteWrongSqlArg(self):
- with self.assertRaises(ValueError):
+ with self.assertRaises(TypeError):
self.cu.execute(42)
def CheckExecuteArgInt(self):
@@ -377,7 +377,7 @@
self.cu.executemany("insert into test(income) values (?)", mygen())
def CheckExecuteManyWrongSqlArg(self):
- with self.assertRaises(ValueError):
+ with self.assertRaises(TypeError):
self.cu.executemany(42, [(3,)])
def CheckExecuteManySelect(self):
diff --git a/Lib/sqlite3/test/regression.py b/Lib/sqlite3/test/regression.py
index 865bd88..ee32616 100644
--- a/Lib/sqlite3/test/regression.py
+++ b/Lib/sqlite3/test/regression.py
@@ -261,7 +261,7 @@
Call a connection with a non-string SQL request: check error handling
of the statement constructor.
"""
- self.assertRaises(sqlite.Warning, self.con, 1)
+ self.assertRaises(TypeError, self.con, 1)
def CheckCollation(self):
def collation_cb(a, b):