diff options
| author | Stanislav Karpov <stkrp@yandex.ru> | 2016-07-20 15:38:07 +0400 |
|---|---|---|
| committer | Tim Graham <timograham@gmail.com> | 2016-08-11 19:35:31 -0400 |
| commit | b387189d86aa6f0b8dd5e9ff2facb725e6beb7a9 (patch) | |
| tree | 3961a86ee5d4d06aa3c5f186ec7fb571427f380d /tests/admin_views | |
| parent | b785927b442d1e4b59f2afa40729a4ca1a7ed3ab (diff) | |
Fixed #26919 -- Added the action form's media in the changelist view.
Diffstat (limited to 'tests/admin_views')
| -rw-r--r-- | tests/admin_views/admin.py | 2 | ||||
| -rw-r--r-- | tests/admin_views/forms.py | 6 | ||||
| -rw-r--r-- | tests/admin_views/tests.py | 12 |
3 files changed, 20 insertions, 0 deletions
diff --git a/tests/admin_views/admin.py b/tests/admin_views/admin.py index 81971c9043..5a9923848f 100644 --- a/tests/admin_views/admin.py +++ b/tests/admin_views/admin.py @@ -22,6 +22,7 @@ from django.utils.html import format_html from django.utils.safestring import mark_safe from django.utils.six import StringIO +from .forms import MediaActionForm from .models import ( Actor, AdminOrderedAdminMethod, AdminOrderedCallable, AdminOrderedField, AdminOrderedModelMethod, Album, Answer, Article, BarAccount, Book, @@ -235,6 +236,7 @@ class PersonaAdmin(admin.ModelAdmin): class SubscriberAdmin(admin.ModelAdmin): actions = ['mail_admin'] + action_form = MediaActionForm def mail_admin(self, request, selected): EmailMessage( diff --git a/tests/admin_views/forms.py b/tests/admin_views/forms.py index 06c99f4bc3..cceb543c41 100644 --- a/tests/admin_views/forms.py +++ b/tests/admin_views/forms.py @@ -1,5 +1,6 @@ from django import forms from django.contrib.admin.forms import AdminAuthenticationForm +from django.contrib.admin.helpers import ActionForm class CustomAdminAuthenticationForm(AdminAuthenticationForm): @@ -12,3 +13,8 @@ class CustomAdminAuthenticationForm(AdminAuthenticationForm): if username == 'customform': raise forms.ValidationError('custom form error') return username + + +class MediaActionForm(ActionForm): + class Media: + js = ['path/to/media.js'] diff --git a/tests/admin_views/tests.py b/tests/admin_views/tests.py index b37535d5c8..42cae7f01d 100644 --- a/tests/admin_views/tests.py +++ b/tests/admin_views/tests.py @@ -43,6 +43,7 @@ from django.utils.six.moves.urllib.parse import parse_qsl, urljoin, urlparse from . import customadmin from .admin import CityAdmin, site, site2 +from .forms import MediaActionForm from .models import ( Actor, AdminOrderedAdminMethod, AdminOrderedCallable, AdminOrderedField, AdminOrderedModelMethod, Answer, Article, BarAccount, Book, Bookmark, @@ -3374,6 +3375,17 @@ action)</option> self.assertEqual(len(mail.outbox), 1) self.assertEqual(mail.outbox[0].subject, 'Greetings from a function action') + def test_media_from_actions_form(self): + """ + The action form's media is included in changelist view's media. + """ + response = self.client.get(reverse('admin:admin_views_subscriber_changelist')) + media_path = MediaActionForm.Media.js[0] + self.assertIsInstance(response.context['action_form'], MediaActionForm) + self.assertIn('media', response.context) + self.assertIn(media_path, response.context['media']._js) + self.assertContains(response, media_path) + def test_user_message_on_none_selected(self): """ User should see a warning when 'Go' is pressed and no items are selected. |
