diff options
author | Paulo <commonzenpython@gmail.com> | 2017-06-03 18:13:38 -0400 |
---|---|---|
committer | Tim Graham <timograham@gmail.com> | 2017-06-06 07:54:31 -0400 |
commit | 4ad2f862844d35404e4798b3227517625210a72e (patch) | |
tree | f7f746b502759cabb5b2aadbd04295ca3f820210 /tests/admin_filters | |
parent | 7f238097c0614707d6ee3fffbaf76f111b2fd38d (diff) | |
download | django-4ad2f862844d35404e4798b3227517625210a72e.tar.gz |
Fixed #28202 -- Fixed FieldListFilter.get_queryset() crash on invalid input.
Diffstat (limited to 'tests/admin_filters')
-rw-r--r-- | tests/admin_filters/tests.py | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/tests/admin_filters/tests.py b/tests/admin_filters/tests.py index 3f2f33bf3c..06b795b2db 100644 --- a/tests/admin_filters/tests.py +++ b/tests/admin_filters/tests.py @@ -6,6 +6,7 @@ from django.contrib.admin import ( AllValuesFieldListFilter, BooleanFieldListFilter, ModelAdmin, RelatedOnlyFieldListFilter, SimpleListFilter, site, ) +from django.contrib.admin.options import IncorrectLookupParameters from django.contrib.admin.views.main import ChangeList from django.contrib.auth.admin import UserAdmin from django.contrib.auth.models import User @@ -763,6 +764,13 @@ class ListFiltersTests(TestCase): queryset = changelist.get_queryset(request) self.assertEqual(list(queryset), [self.bio_book, self.djangonaut_book]) + def test_fieldlistfilter_invalid_lookup_parameters(self): + """Filtering by an invalid value.""" + modeladmin = BookAdmin(Book, site) + request = self.request_factory.get('/', {'author__id__exact': 'StringNotInteger!'}) + with self.assertRaises(IncorrectLookupParameters): + self.get_changelist(request, Book, modeladmin) + def test_simplelistfilter(self): modeladmin = DecadeFilterBookAdmin(Book, site) |