diff options
| author | Claude Paroz <claude@2xlibre.net> | 2017-11-08 01:06:32 +0100 |
|---|---|---|
| committer | Tim Graham <timograham@gmail.com> | 2017-11-07 19:06:32 -0500 |
| commit | 0cf00769ad11fa5ff0dff585d7f491a80f3e45ef (patch) | |
| tree | 010c7710d6cca4dc74c4e4cb8f92f8d329410140 /tests/admin_views | |
| parent | ac6a4eb9f95138628a7eec76bee91eb067af80a9 (diff) | |
Fixed #28585 -- Calculated admin's change form multipart context variable from forms and formsets
Thanks Tim Graham for the review.
Diffstat (limited to 'tests/admin_views')
| -rw-r--r-- | tests/admin_views/tests.py | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/tests/admin_views/tests.py b/tests/admin_views/tests.py index b7c405f271..2a5ab9b55d 100644 --- a/tests/admin_views/tests.py +++ b/tests/admin_views/tests.py @@ -56,10 +56,11 @@ from .models import ( UnorderedObject, Villain, Vodcast, Whatsit, Widget, Worker, WorkHour, ) - ERROR_MESSAGE = "Please enter the correct username and password \ for a staff account. Note that both fields may be case-sensitive." +MULTIPART_ENCTYPE = 'enctype="multipart/form-data"' + class AdminFieldExtractionMixin: """ @@ -3522,6 +3523,13 @@ class AdminInlineFileUploadTest(TestCase): self.picture = Picture(name="Test Picture", image=filename, gallery=self.gallery) self.picture.save() + def test_form_has_multipart_enctype(self): + response = self.client.get( + reverse('admin:admin_views_gallery_change', args=(self.gallery.id,)) + ) + self.assertIs(response.context['has_file_field'], True) + self.assertContains(response, MULTIPART_ENCTYPE) + def test_inline_file_upload_edit_validation_error_post(self): """ Inline file uploads correctly display prior data (#10002). @@ -3658,6 +3666,10 @@ class AdminInlineTests(TestCase): response = self.client.get(collector_url) self.assertContains(response, 'name="widget_set-0-id"') + # No file or image fields, no enctype on the forms + self.assertIs(response.context['has_file_field'], False) + self.assertNotContains(response, MULTIPART_ENCTYPE) + # Now resave that inline self.post_data['widget_set-INITIAL_FORMS'] = "1" self.post_data['widget_set-0-id'] = str(widget_id) @@ -5451,7 +5463,7 @@ class AdminKeepChangeListFiltersTests(TestCase): # Check the form action. form_action = re.search( - '<form enctype="multipart/form-data" action="(.*?)" method="post" id="user_form".*?>', + '<form action="(.*?)" method="post" id="user_form".*?>', force_text(response.content) ) self.assertURLEqual(form_action.group(1), '?%s' % self.get_preserved_filters_querystring()) @@ -5515,7 +5527,7 @@ class AdminKeepChangeListFiltersTests(TestCase): # Check the form action. form_action = re.search( - '<form enctype="multipart/form-data" action="(.*?)" method="post" id="user_form".*?>', + '<form action="(.*?)" method="post" id="user_form".*?>', force_text(response.content) ) self.assertURLEqual(form_action.group(1), '?%s' % self.get_preserved_filters_querystring()) |
