summaryrefslogtreecommitdiff
path: root/tests/forms_tests
diff options
context:
space:
mode:
authorClaude Paroz <claude@2xlibre.net>2014-03-13 16:55:38 +0100
committerClaude Paroz <claude@2xlibre.net>2014-03-13 16:59:23 +0100
commit1a2939bc26b7077e3196cea9bce52826ec7a6d9d (patch)
tree830b645242eaebdfb6cabe058b4b9bd7ce6ab510 /tests/forms_tests
parent141bb90b4c66cca1c4bfafe2a0e5c5777c55c61c (diff)
[1.6.x] Fixed #22245 -- Avoided widget overwrite in forms.IntegerField subclasses
Thanks Jeroen Pulles for the report and Simon Charette for the review. Backport of 5a976b4bec7 from master.
Diffstat (limited to 'tests/forms_tests')
-rw-r--r--tests/forms_tests/tests/test_fields.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/tests/forms_tests/tests/test_fields.py b/tests/forms_tests/tests/test_fields.py
index f02593e488..262ec5d9f6 100644
--- a/tests/forms_tests/tests/test_fields.py
+++ b/tests/forms_tests/tests/test_fields.py
@@ -234,6 +234,18 @@ class FieldsTests(SimpleTestCase):
f1 = IntegerField(localize=True)
self.assertWidgetRendersTo(f1, '<input id="id_f" name="f" type="text" />')
+ def test_integerfield_subclass(self):
+ """
+ Test that class-defined widget is not overwritten by __init__ (#22245).
+ """
+ class MyIntegerField(IntegerField):
+ widget = Textarea
+
+ f = MyIntegerField()
+ self.assertEqual(f.widget.__class__, Textarea)
+ f = MyIntegerField(localize=True)
+ self.assertEqual(f.widget.__class__, Textarea)
+
# FloatField ##################################################################
def test_floatfield_1(self):