From 5a976b4bec79cdb6b75581be6478356fb13fda77 Mon Sep 17 00:00:00 2001 From: Claude Paroz Date: Thu, 13 Mar 2014 16:55:38 +0100 Subject: Fixed #22245 -- Avoided widget overwrite in forms.IntegerField subclasses Thanks Jeroen Pulles for the report and Simon Charette for the review. --- tests/forms_tests/tests/test_fields.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'tests/forms_tests') diff --git a/tests/forms_tests/tests/test_fields.py b/tests/forms_tests/tests/test_fields.py index 5a42e4b95d..454a8349d7 100644 --- a/tests/forms_tests/tests/test_fields.py +++ b/tests/forms_tests/tests/test_fields.py @@ -239,6 +239,18 @@ class FieldsTests(SimpleTestCase): f1 = IntegerField(localize=True) self.assertWidgetRendersTo(f1, '') + 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): -- cgit v1.3