From 08d14925c9e321d7ff4e0f6c1983a74606aa1941 Mon Sep 17 00:00:00 2001 From: Ramiro Morales Date: Wed, 13 Oct 2010 23:36:16 +0000 Subject: Fixed #12192 -- Don't execute any DB query when the QS slicing being performed will result in use of LIMIT 0. Thanks Suor for the report. git-svn-id: http://code.djangoproject.com/svn/django/trunk@14204 bcc190cf-cafb-0310-a4f2-bffc1f526a37 --- tests/regressiontests/queries/tests.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'tests/regressiontests') diff --git a/tests/regressiontests/queries/tests.py b/tests/regressiontests/queries/tests.py index 7d393bc2aa..795725a992 100644 --- a/tests/regressiontests/queries/tests.py +++ b/tests/regressiontests/queries/tests.py @@ -86,8 +86,18 @@ class EmptyQuerySetTests(TestCase): def test_emptyqueryset_values(self): "#14366 -- calling .values() on an EmptyQuerySet and then cloning that should not cause an error" self.assertEqual(list(Number.objects.none().values('num').order_by('num')), []) - + def test_values_subquery(self): self.assertQuerysetEqual( Number.objects.filter(pk__in=Number.objects.none().values("pk")), [] ) + + +class WeirdQuerySetSlicing(TestCase): + def setUp(self): + Number.objects.create(num=1) + Number.objects.create(num=2) + + def test_empty_resultset_sql(self): + # ticket #12192 + self.assertNumQueries(0, lambda: list(Number.objects.all()[1:1])) -- cgit v1.3