summaryrefslogtreecommitdiff
path: root/tests/forms_tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests/forms_tests')
-rw-r--r--tests/forms_tests/tests/test_forms.py17
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/forms_tests/tests/test_forms.py b/tests/forms_tests/tests/test_forms.py
index 45e62a492c..f7eb46522f 100644
--- a/tests/forms_tests/tests/test_forms.py
+++ b/tests/forms_tests/tests/test_forms.py
@@ -1846,3 +1846,20 @@ class FormsTestCase(TestCase):
self.assertHTMLEqual(boundfield.label_tag(), 'Field')
self.assertHTMLEqual(boundfield.label_tag('Custom&'), 'Custom&')
+
+ def test_boundfield_label_tag_custom_widget_id_for_label(self):
+ class CustomIdForLabelTextInput(TextInput):
+ def id_for_label(self, id):
+ return 'custom_' + id
+
+ class EmptyIdForLabelTextInput(TextInput):
+ def id_for_label(self, id):
+ return None
+
+ class SomeForm(Form):
+ custom = CharField(widget=CustomIdForLabelTextInput)
+ empty = CharField(widget=EmptyIdForLabelTextInput)
+
+ form = SomeForm()
+ self.assertHTMLEqual(form['custom'].label_tag(), '<label for="custom_id_custom">Custom</label>')
+ self.assertHTMLEqual(form['empty'].label_tag(), '<label>Empty</label>')