diff options
| author | Michal Petrucha <michal.petrucha@koniiiik.org> | 2016-11-06 07:16:56 +0100 |
|---|---|---|
| committer | Tim Graham <timograham@gmail.com> | 2016-11-06 07:16:56 +0100 |
| commit | 09da1e79de5a03a63610822bd4e5fc2adcbeb38a (patch) | |
| tree | 260824793c64587d9bf7f923bd6016d65dca2236 /tests/forms_tests/field_tests/test_base.py | |
| parent | 37809b891eae2e73c7e80fbf5d8b9a7e86e82b54 (diff) | |
Fixed #27369 -- Prevented widgets from being shared between form field instances.
Diffstat (limited to 'tests/forms_tests/field_tests/test_base.py')
| -rw-r--r-- | tests/forms_tests/field_tests/test_base.py | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/tests/forms_tests/field_tests/test_base.py b/tests/forms_tests/field_tests/test_base.py index 2eea92a149..802af3b183 100644 --- a/tests/forms_tests/field_tests/test_base.py +++ b/tests/forms_tests/field_tests/test_base.py @@ -1,4 +1,4 @@ -from django.forms import Field +from django.forms import ChoiceField, Field, Form, Select from django.test import SimpleTestCase @@ -20,3 +20,17 @@ class BasicFieldsTests(SimpleTestCase): f = ComplexField() self.assertTrue(f.class_a_var) + + def test_field_deepcopies_widget_instance(self): + class CustomChoiceField(ChoiceField): + widget = Select(attrs={'class': 'my-custom-class'}) + + class TestForm(Form): + field1 = CustomChoiceField(choices=[]) + field2 = CustomChoiceField(choices=[]) + + f = TestForm() + f.fields['field1'].choices = [('1', '1')] + f.fields['field2'].choices = [('2', '2')] + self.assertEqual(f.fields['field1'].widget.choices, [('1', '1')]) + self.assertEqual(f.fields['field2'].widget.choices, [('2', '2')]) |
