summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/admin_changelist/admin.py7
-rw-r--r--tests/admin_changelist/tests.py10
2 files changed, 16 insertions, 1 deletions
diff --git a/tests/admin_changelist/admin.py b/tests/admin_changelist/admin.py
index db836cdf7d..a63f2b60ce 100644
--- a/tests/admin_changelist/admin.py
+++ b/tests/admin_changelist/admin.py
@@ -105,3 +105,10 @@ class DynamicListFilterChildAdmin(admin.ModelAdmin):
my_list_filter.remove('parent')
return my_list_filter
+class DynamicSearchFieldsChildAdmin(admin.ModelAdmin):
+ search_fields = ('name',)
+
+ def get_search_fields(self, request):
+ search_fields = super(DynamicSearchFieldsChildAdmin, self).get_search_fields(request)
+ search_fields += ('age',)
+ return search_fields
diff --git a/tests/admin_changelist/tests.py b/tests/admin_changelist/tests.py
index a65de46490..cb1ac5039f 100644
--- a/tests/admin_changelist/tests.py
+++ b/tests/admin_changelist/tests.py
@@ -18,7 +18,8 @@ from .admin import (ChildAdmin, QuartetAdmin, BandAdmin, ChordsBandAdmin,
GroupAdmin, ParentAdmin, DynamicListDisplayChildAdmin,
DynamicListDisplayLinksChildAdmin, CustomPaginationAdmin,
FilteredChildAdmin, CustomPaginator, site as custom_site,
- SwallowAdmin, DynamicListFilterChildAdmin, InvitationAdmin)
+ SwallowAdmin, DynamicListFilterChildAdmin, InvitationAdmin,
+ DynamicSearchFieldsChildAdmin)
from .models import (Event, Child, Parent, Genre, Band, Musician, Group,
Quartet, Membership, ChordsMusician, ChordsBand, Invitation, Swallow,
UnorderedObject, OrderedObject, CustomIdUser)
@@ -588,6 +589,13 @@ class ChangeListTests(TestCase):
response = m.changelist_view(request)
self.assertEqual(response.context_data['cl'].list_filter, ('parent', 'name', 'age'))
+ def test_dynamic_search_fields(self):
+ child = self._create_superuser('child')
+ m = DynamicSearchFieldsChildAdmin(Child, admin.site)
+ request = self._mocked_authenticated_request('/child/', child)
+ response = m.changelist_view(request)
+ self.assertEqual(response.context_data['cl'].search_fields, ('name', 'age'))
+
def test_pagination_page_range(self):
"""
Regression tests for ticket #15653: ensure the number of pages