diff options
| author | David <smithdc@gmail.com> | 2022-01-13 23:08:38 +0000 |
|---|---|---|
| committer | Carlton Gibson <carlton@noumenal.es> | 2022-03-30 16:28:14 +0200 |
| commit | c8459708a7e0a2474255b77d0f104a7f16e8b32c (patch) | |
| tree | add60b1d21cfaa37e51c116348054e71c91f73a1 /tests/forms_tests/widget_tests/test_multiwidget.py | |
| parent | 04ad0f26ba4b8c79dc311e1789457e0c4d1b8832 (diff) | |
Refs #32339 -- Added use_fieldset to Widget.
Diffstat (limited to 'tests/forms_tests/widget_tests/test_multiwidget.py')
| -rw-r--r-- | tests/forms_tests/widget_tests/test_multiwidget.py | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/tests/forms_tests/widget_tests/test_multiwidget.py b/tests/forms_tests/widget_tests/test_multiwidget.py index a89082c4a6..aac859a4b8 100644 --- a/tests/forms_tests/widget_tests/test_multiwidget.py +++ b/tests/forms_tests/widget_tests/test_multiwidget.py @@ -4,6 +4,7 @@ from datetime import datetime from django.forms import ( CharField, FileInput, + Form, MultipleChoiceField, MultiValueField, MultiWidget, @@ -51,7 +52,9 @@ class ComplexField(MultiValueField): MultipleChoiceField(choices=WidgetTest.beatles), SplitDateTimeField(), ) - super().__init__(fields, required, widget, label, initial) + super().__init__( + fields, required=required, widget=widget, label=label, initial=initial + ) def compress(self, data_list): if data_list: @@ -296,3 +299,22 @@ class MultiWidgetTest(WidgetTest): # w2 ought to be independent of w1, since MultiWidget ought # to make a copy of its sub-widgets when it is copied. self.assertEqual(w1.choices, [1, 2, 3]) + + def test_fieldset(self): + class TestForm(Form): + template_name = "forms_tests/use_fieldset.html" + field = ComplexField(widget=ComplexMultiWidget) + + form = TestForm() + self.assertIs(form["field"].field.widget.use_fieldset, True) + self.assertHTMLEqual( + "<div><fieldset><legend>Field:</legend>" + '<input type="text" name="field_0" required id="id_field_0">' + '<select name="field_1" required id="id_field_1" multiple>' + '<option value="J">John</option><option value="P">Paul</option>' + '<option value="G">George</option><option value="R">Ringo</option></select>' + '<input type="text" name="field_2_0" required id="id_field_2_0">' + '<input type="text" name="field_2_1" required id="id_field_2_1">' + "</fieldset></div>", + form.render(), + ) |
