summaryrefslogtreecommitdiff
path: root/tests/admin_filters
diff options
context:
space:
mode:
authorzeyneloz <ozdemir.zynl@gmail.com>2019-08-15 10:10:11 +0200
committerMariusz Felisiak <felisiak.mariusz@gmail.com>2019-08-15 10:29:10 +0200
commit8289fc55fff879df273cb95fdd1b039447f85783 (patch)
treef1641d660e3d1b5bfb875c84a4b710f208b30b19 /tests/admin_filters
parent00035672a460b6eb5442d2837bc783f8af28c6f3 (diff)
downloaddjango-8289fc55fff879df273cb95fdd1b039447f85783.tar.gz
Refs #30449 -- Made RelatedOnlyFieldListFilter respect ModelAdmin.ordering.
Diffstat (limited to 'tests/admin_filters')
-rw-r--r--tests/admin_filters/tests.py27
1 files changed, 27 insertions, 0 deletions
diff --git a/tests/admin_filters/tests.py b/tests/admin_filters/tests.py
index 75563bbaaf..4e6f1f4732 100644
--- a/tests/admin_filters/tests.py
+++ b/tests/admin_filters/tests.py
@@ -741,6 +741,33 @@ class ListFiltersTests(TestCase):
expected = [(self.alfred.pk, 'alfred'), (self.bob.pk, 'bob')]
self.assertEqual(sorted(filterspec.lookup_choices), sorted(expected))
+ def test_relatedonlyfieldlistfilter_foreignkey_ordering(self):
+ """RelatedOnlyFieldListFilter ordering respects ModelAdmin.ordering."""
+ class EmployeeAdminWithOrdering(ModelAdmin):
+ ordering = ('name',)
+
+ class BookAdmin(ModelAdmin):
+ list_filter = (
+ ('employee', RelatedOnlyFieldListFilter),
+ )
+
+ albert = Employee.objects.create(name='Albert Green', department=self.dev)
+ self.djangonaut_book.employee = albert
+ self.djangonaut_book.save()
+ self.bio_book.employee = self.jack
+ self.bio_book.save()
+
+ site.register(Employee, EmployeeAdminWithOrdering)
+ self.addCleanup(lambda: site.unregister(Employee))
+ modeladmin = BookAdmin(Book, site)
+
+ request = self.request_factory.get('/')
+ request.user = self.alfred
+ changelist = modeladmin.get_changelist_instance(request)
+ filterspec = changelist.get_filters(request)[0][0]
+ expected = [(albert.pk, 'Albert Green'), (self.jack.pk, 'Jack Red')]
+ self.assertEqual(filterspec.lookup_choices, expected)
+
def test_relatedonlyfieldlistfilter_foreignkey_default_ordering(self):
"""RelatedOnlyFieldListFilter ordering respects Meta.ordering."""
class BookAdmin(ModelAdmin):