summaryrefslogtreecommitdiff
path: root/tests/ordering
diff options
context:
space:
mode:
authorruchit2801 <vithaniruchit@gmail.com>2019-05-17 13:00:57 +0530
committerMariusz Felisiak <felisiak.mariusz@gmail.com>2019-05-18 19:29:00 +0200
commit04042b2b440f0bf50eb908d52cfe76af430e1738 (patch)
tree65dcb4110c7da75f8589b8c3f714a5e859335e6d /tests/ordering
parente86cc14bd36734d81c4e490a2453778e33b95a45 (diff)
downloaddjango-04042b2b440f0bf50eb908d52cfe76af430e1738.tar.gz
Fixed #30463 -- Fixed crash of deprecation message when Meta.ordering contains expressions.
Regression in 1b1f64ee5a78cc217fead52cbae23114502cf564.
Diffstat (limited to 'tests/ordering')
-rw-r--r--tests/ordering/models.py8
-rw-r--r--tests/ordering/tests.py4
2 files changed, 10 insertions, 2 deletions
diff --git a/tests/ordering/models.py b/tests/ordering/models.py
index 85e8c59bb6..8b71983c44 100644
--- a/tests/ordering/models.py
+++ b/tests/ordering/models.py
@@ -14,6 +14,7 @@ undefined -- not random, just undefined.
"""
from django.db import models
+from django.db.models.expressions import OrderBy
class Author(models.Model):
@@ -30,7 +31,12 @@ class Article(models.Model):
pub_date = models.DateTimeField()
class Meta:
- ordering = ('-pub_date', 'headline')
+ ordering = (
+ '-pub_date',
+ 'headline',
+ models.F('author__name').asc(),
+ OrderBy(models.F('second_author__name')),
+ )
def __str__(self):
return self.headline
diff --git a/tests/ordering/tests.py b/tests/ordering/tests.py
index 16e5cc9b2d..f0c4bba999 100644
--- a/tests/ordering/tests.py
+++ b/tests/ordering/tests.py
@@ -408,7 +408,9 @@ class OrderingTests(TestCase):
def test_deprecated_values_annotate(self):
msg = (
"Article QuerySet won't use Meta.ordering in Django 3.1. Add "
- ".order_by('-pub_date', 'headline') to retain the current query."
+ ".order_by('-pub_date', 'headline', OrderBy(F(author__name), "
+ "descending=False), OrderBy(F(second_author__name), "
+ "descending=False)) to retain the current query."
)
with self.assertRaisesMessage(RemovedInDjango31Warning, msg):
list(Article.objects.values('author').annotate(Count('headline')))