diff options
| author | Loek van Gent <loek@1procentclub.nl> | 2015-03-16 11:00:16 +0100 |
|---|---|---|
| committer | Tim Graham <timograham@gmail.com> | 2015-03-19 08:52:28 -0400 |
| commit | 35b3158d52a5fe51d3b52aec1109a30a73c5abe9 (patch) | |
| tree | 9e32f6e9a81e720af9ccce61a8c0d963152c2374 /tests | |
| parent | 8d90489fe0049049f1f13c737ac51a24abf1efc3 (diff) | |
Fixed #24417 -- Added ModelAdmin.get_list_select_related()
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/admin_changelist/tests.py | 25 |
1 files changed, 22 insertions, 3 deletions
diff --git a/tests/admin_changelist/tests.py b/tests/admin_changelist/tests.py index b9e2a5da02..2161c52f3e 100644 --- a/tests/admin_changelist/tests.py +++ b/tests/admin_changelist/tests.py @@ -50,9 +50,10 @@ class ChangeListTests(TestCase): """ m = ChildAdmin(Child, admin.site) request = self.factory.get('/child/') + list_select_related = m.get_list_select_related(request) cl = ChangeList(request, Child, m.list_display, m.list_display_links, m.list_filter, m.date_hierarchy, m.search_fields, - m.list_select_related, m.list_per_page, + list_select_related, m.list_per_page, m.list_max_show_all, m.list_editable, m) self.assertEqual(cl.queryset.query.select_related, { 'parent': {'name': {}} @@ -61,9 +62,10 @@ class ChangeListTests(TestCase): def test_select_related_as_tuple(self): ia = InvitationAdmin(Invitation, admin.site) request = self.factory.get('/invitation/') + list_select_related = ia.get_list_select_related(request) cl = ChangeList(request, Child, ia.list_display, ia.list_display_links, ia.list_filter, ia.date_hierarchy, ia.search_fields, - ia.list_select_related, ia.list_per_page, + list_select_related, ia.list_per_page, ia.list_max_show_all, ia.list_editable, ia) self.assertEqual(cl.queryset.query.select_related, {'player': {}}) @@ -71,12 +73,29 @@ class ChangeListTests(TestCase): ia = InvitationAdmin(Invitation, admin.site) ia.list_select_related = () request = self.factory.get('/invitation/') + list_select_related = ia.get_list_select_related(request) cl = ChangeList(request, Child, ia.list_display, ia.list_display_links, ia.list_filter, ia.date_hierarchy, ia.search_fields, - ia.list_select_related, ia.list_per_page, + list_select_related, ia.list_per_page, ia.list_max_show_all, ia.list_editable, ia) self.assertEqual(cl.queryset.query.select_related, False) + def test_get_select_related_custom_method(self): + class GetListSelectRelatedAdmin(admin.ModelAdmin): + list_display = ('band', 'player') + + def get_list_select_related(self, request): + return ('band', 'player') + + ia = GetListSelectRelatedAdmin(Invitation, admin.site) + request = self.factory.get('/invitation/') + list_select_related = ia.get_list_select_related(request) + cl = ChangeList(request, Child, ia.list_display, ia.list_display_links, + ia.list_filter, ia.date_hierarchy, ia.search_fields, + list_select_related, ia.list_per_page, + ia.list_max_show_all, ia.list_editable, ia) + self.assertEqual(cl.queryset.query.select_related, {'player': {}, 'band': {}}) + def test_result_list_empty_changelist_value(self): """ Regression test for #14982: EMPTY_CHANGELIST_VALUE should be honored |
