summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>2022-11-22 08:51:59 (GMT)
committerGitHub <noreply@github.com>2022-11-22 08:51:59 (GMT)
commite26aa24b47c3b0022a85dca13d3f73000942c644 (patch)
tree71f6ac0d4dc8f4272bd2bbafa4cd1abc512516a8
parent05147dc38374a426ac7d24ba110260ae08fa2257 (diff)
downloadcpython-e26aa24b47c3b0022a85dca13d3f73000942c644.zip
cpython-e26aa24b47c3b0022a85dca13d3f73000942c644.tar.gz
cpython-e26aa24b47c3b0022a85dca13d3f73000942c644.tar.bz2
gh-99659: Use correct exceptions in sqlite3 bigmem tests (GH-99660)
The tests in question were added in 0eec6276fdcd by Serhiy. Apparently, sqlite3 changed exceptions raised in those cases in the mean time but the tests never ran because they require a high `-M` setting in the test runner. (cherry picked from commit 2781ec9b0e41a62cecc189c22dfc849f9a56927c) Co-authored-by: Ɓukasz Langa <lukasz@langa.pl>
-rw-r--r--Lib/test/test_sqlite3/test_types.py8
-rw-r--r--Misc/NEWS.d/next/Tests/2022-11-21-19-21-30.gh-issue-99659.4gP0nm.rst3
2 files changed, 7 insertions, 4 deletions
diff --git a/Lib/test/test_sqlite3/test_types.py b/Lib/test/test_sqlite3/test_types.py
index 177cd10..ed22548 100644
--- a/Lib/test/test_sqlite3/test_types.py
+++ b/Lib/test/test_sqlite3/test_types.py
@@ -106,9 +106,9 @@ class SqliteTypeTests(unittest.TestCase):
@unittest.skipUnless(sys.maxsize > 2**32, 'requires 64bit platform')
@support.bigmemtest(size=2**31, memuse=4, dry_run=False)
def test_too_large_string(self, maxsize):
- with self.assertRaises(sqlite.InterfaceError):
+ with self.assertRaises(sqlite.DataError):
self.cur.execute("insert into test(s) values (?)", ('x'*(2**31-1),))
- with self.assertRaises(OverflowError):
+ with self.assertRaises(sqlite.DataError):
self.cur.execute("insert into test(s) values (?)", ('x'*(2**31),))
self.cur.execute("select 1 from test")
row = self.cur.fetchone()
@@ -117,9 +117,9 @@ class SqliteTypeTests(unittest.TestCase):
@unittest.skipUnless(sys.maxsize > 2**32, 'requires 64bit platform')
@support.bigmemtest(size=2**31, memuse=3, dry_run=False)
def test_too_large_blob(self, maxsize):
- with self.assertRaises(sqlite.InterfaceError):
+ with self.assertRaises(sqlite.DataError):
self.cur.execute("insert into test(s) values (?)", (b'x'*(2**31-1),))
- with self.assertRaises(OverflowError):
+ with self.assertRaises(sqlite.DataError):
self.cur.execute("insert into test(s) values (?)", (b'x'*(2**31),))
self.cur.execute("select 1 from test")
row = self.cur.fetchone()
diff --git a/Misc/NEWS.d/next/Tests/2022-11-21-19-21-30.gh-issue-99659.4gP0nm.rst b/Misc/NEWS.d/next/Tests/2022-11-21-19-21-30.gh-issue-99659.4gP0nm.rst
new file mode 100644
index 0000000..3db1ec1
--- /dev/null
+++ b/Misc/NEWS.d/next/Tests/2022-11-21-19-21-30.gh-issue-99659.4gP0nm.rst
@@ -0,0 +1,3 @@
+Optional big memory tests in ``test_sqlite3`` now catch the correct
+:exc:`sqlite.DataError` exception type in case of too large strings and/or
+blobs passed.