summaryrefslogtreecommitdiff
path: root/tests/queries
diff options
context:
space:
mode:
authorSimon Charette <charette.s@gmail.com>2022-11-06 11:19:33 -0500
committerMariusz Felisiak <felisiak.mariusz@gmail.com>2022-11-07 20:23:53 +0100
commit76e37513e22f4d9a01c7f15eee36fe44388e6670 (patch)
tree575decec7547c3c128857b0444f342452865a0f9 /tests/queries
parent4b702c832cd550fe682ef37a69e93866815b9123 (diff)
downloaddjango-76e37513e22f4d9a01c7f15eee36fe44388e6670.tar.gz
Refs #33374 -- Adjusted full match condition handling.
Adjusting WhereNode.as_sql() to raise an exception when encoutering a full match just like with empty matches ensures that all case are explicitly handled.
Diffstat (limited to 'tests/queries')
-rw-r--r--tests/queries/tests.py20
1 files changed, 13 insertions, 7 deletions
diff --git a/tests/queries/tests.py b/tests/queries/tests.py
index 63e9ea6687..332a6e5d9a 100644
--- a/tests/queries/tests.py
+++ b/tests/queries/tests.py
@@ -5,7 +5,7 @@ import unittest
from operator import attrgetter
from threading import Lock
-from django.core.exceptions import EmptyResultSet, FieldError
+from django.core.exceptions import EmptyResultSet, FieldError, FullResultSet
from django.db import DEFAULT_DB_ALIAS, connection
from django.db.models import CharField, Count, Exists, F, Max, OuterRef, Q
from django.db.models.expressions import RawSQL
@@ -3588,7 +3588,8 @@ class WhereNodeTest(SimpleTestCase):
with self.assertRaises(EmptyResultSet):
w.as_sql(compiler, connection)
w.negate()
- self.assertEqual(w.as_sql(compiler, connection), ("", []))
+ with self.assertRaises(FullResultSet):
+ w.as_sql(compiler, connection)
w = WhereNode(children=[self.DummyNode(), self.DummyNode()])
self.assertEqual(w.as_sql(compiler, connection), ("(dummy AND dummy)", []))
w.negate()
@@ -3597,7 +3598,8 @@ class WhereNodeTest(SimpleTestCase):
with self.assertRaises(EmptyResultSet):
w.as_sql(compiler, connection)
w.negate()
- self.assertEqual(w.as_sql(compiler, connection), ("", []))
+ with self.assertRaises(FullResultSet):
+ w.as_sql(compiler, connection)
def test_empty_full_handling_disjunction(self):
compiler = WhereNodeTest.MockCompiler()
@@ -3605,7 +3607,8 @@ class WhereNodeTest(SimpleTestCase):
with self.assertRaises(EmptyResultSet):
w.as_sql(compiler, connection)
w.negate()
- self.assertEqual(w.as_sql(compiler, connection), ("", []))
+ with self.assertRaises(FullResultSet):
+ w.as_sql(compiler, connection)
w = WhereNode(children=[self.DummyNode(), self.DummyNode()], connector=OR)
self.assertEqual(w.as_sql(compiler, connection), ("(dummy OR dummy)", []))
w.negate()
@@ -3619,7 +3622,8 @@ class WhereNodeTest(SimpleTestCase):
compiler = WhereNodeTest.MockCompiler()
empty_w = WhereNode()
w = WhereNode(children=[empty_w, empty_w])
- self.assertEqual(w.as_sql(compiler, connection), ("", []))
+ with self.assertRaises(FullResultSet):
+ w.as_sql(compiler, connection)
w.negate()
with self.assertRaises(EmptyResultSet):
w.as_sql(compiler, connection)
@@ -3627,9 +3631,11 @@ class WhereNodeTest(SimpleTestCase):
with self.assertRaises(EmptyResultSet):
w.as_sql(compiler, connection)
w.negate()
- self.assertEqual(w.as_sql(compiler, connection), ("", []))
+ with self.assertRaises(FullResultSet):
+ w.as_sql(compiler, connection)
w = WhereNode(children=[empty_w, NothingNode()], connector=OR)
- self.assertEqual(w.as_sql(compiler, connection), ("", []))
+ with self.assertRaises(FullResultSet):
+ w.as_sql(compiler, connection)
w = WhereNode(children=[empty_w, NothingNode()], connector=AND)
with self.assertRaises(EmptyResultSet):
w.as_sql(compiler, connection)