Fixed #28414 -- Fixed ClearableFileInput rendering as a subwidget of MultiWidget.

This commit is contained in:
Roman Selivanov 2017-07-19 18:24:27 +03:00 committed by Tim Graham
parent 3f7953846e
commit d4da39685b
7 changed files with 35 additions and 15 deletions

View file

@ -1,5 +1,5 @@
from django.core.files.uploadedfile import SimpleUploadedFile
from django.forms import ClearableFileInput
from django.forms import ClearableFileInput, MultiWidget
from .base import WidgetTest
@ -74,6 +74,18 @@ class ClearableFileInputTest(WidgetTest):
"""
self.check_html(self.widget, 'myfile', None, html='<input type="file" name="myfile" />')
def test_render_as_subwidget(self):
"""A ClearableFileInput as a subwidget of MultiWidget."""
widget = MultiWidget(widgets=(self.widget,))
self.check_html(widget, 'myfile', [FakeFieldFile()], html=(
"""
Currently: <a href="something">something</a>
<input type="checkbox" name="myfile_0-clear" id="myfile_0-clear_id" />
<label for="myfile_0-clear_id">Clear</label><br />
Change: <input type="file" name="myfile_0" />
"""
))
def test_clear_input_checked_returns_false(self):
"""
ClearableFileInput.value_from_datadict returns False if the clear