mirror of
https://github.com/django/django.git
synced 2025-10-24 06:06:09 +00:00
Fixed #27313 -- Allowed overriding admin popup response template.
This commit is contained in:
committed by
Tim Graham
parent
fb1349ce8c
commit
1e629928e9
@@ -969,6 +969,16 @@ class AdminCustomTemplateTests(AdminViewBasicTestCase):
|
||||
response = self.client.get(reverse('admin:admin_views_customarticle_history', args=(article_pk,)))
|
||||
self.assertTemplateUsed(response, 'custom_admin/object_history.html')
|
||||
|
||||
# A custom popup response template may be specified by
|
||||
# ModelAdmin.popup_response_template.
|
||||
response = self.client.post(reverse('admin:admin_views_customarticle_add') + '?%s=1' % IS_POPUP_VAR, {
|
||||
'content': '<p>great article</p>',
|
||||
'date_0': '2008-03-18',
|
||||
'date_1': '10:54:39',
|
||||
IS_POPUP_VAR: '1'
|
||||
})
|
||||
self.assertEqual(response.template_name, 'custom_admin/popup_response.html')
|
||||
|
||||
def test_extended_bodyclass_template_change_form(self):
|
||||
"""
|
||||
The admin/change_form.html template uses block.super in the
|
||||
@@ -3433,7 +3443,7 @@ action)</option>
|
||||
reverse('admin:admin_views_subscriber_changelist') + '?%s' % IS_POPUP_VAR)
|
||||
self.assertIsNone(response.context["action_form"])
|
||||
|
||||
def test_popup_template_response(self):
|
||||
def test_popup_template_response_on_add(self):
|
||||
"""
|
||||
Success on popups shall be rendered from template in order to allow
|
||||
easy customization.
|
||||
@@ -3442,7 +3452,40 @@ action)</option>
|
||||
reverse('admin:admin_views_actor_add') + '?%s=1' % IS_POPUP_VAR,
|
||||
{'name': 'Troy McClure', 'age': '55', IS_POPUP_VAR: '1'})
|
||||
self.assertEqual(response.status_code, 200)
|
||||
self.assertEqual(response.template_name, 'admin/popup_response.html')
|
||||
self.assertListEqual(response.template_name, [
|
||||
'admin/admin_views/actor/popup_response.html',
|
||||
'admin/admin_views/popup_response.html',
|
||||
'admin/popup_response.html',
|
||||
])
|
||||
self.assertTemplateUsed(response, 'admin/popup_response.html')
|
||||
|
||||
def test_popup_template_response_on_change(self):
|
||||
instance = Actor.objects.create(name='David Tennant', age=45)
|
||||
response = self.client.post(
|
||||
reverse('admin:admin_views_actor_change', args=(instance.pk,)) + '?%s=1' % IS_POPUP_VAR,
|
||||
{'name': 'David Tennant', 'age': '46', IS_POPUP_VAR: '1'}
|
||||
)
|
||||
self.assertEqual(response.status_code, 200)
|
||||
self.assertListEqual(response.template_name, [
|
||||
'admin/admin_views/actor/popup_response.html',
|
||||
'admin/admin_views/popup_response.html',
|
||||
'admin/popup_response.html',
|
||||
])
|
||||
self.assertTemplateUsed(response, 'admin/popup_response.html')
|
||||
|
||||
def test_popup_template_response_on_delete(self):
|
||||
instance = Actor.objects.create(name='David Tennant', age=45)
|
||||
response = self.client.post(
|
||||
reverse('admin:admin_views_actor_delete', args=(instance.pk,)) + '?%s=1' % IS_POPUP_VAR,
|
||||
{IS_POPUP_VAR: '1'}
|
||||
)
|
||||
self.assertEqual(response.status_code, 200)
|
||||
self.assertListEqual(response.template_name, [
|
||||
'admin/admin_views/actor/popup_response.html',
|
||||
'admin/admin_views/popup_response.html',
|
||||
'admin/popup_response.html',
|
||||
])
|
||||
self.assertTemplateUsed(response, 'admin/popup_response.html')
|
||||
|
||||
def test_popup_template_escaping(self):
|
||||
popup_response_data = json.dumps({
|
||||
|
||||
Reference in New Issue
Block a user