mirror of
https://github.com/django/django.git
synced 2025-10-24 22:26:08 +00:00
[1.11.x] Fixed #27850 -- Made RelatedFieldWidgetWrapper call render() of the wrapped widget.
Backport of fb7e0e01af from master
This commit is contained in:
committed by
Tim Graham
parent
447c6802f0
commit
808d33c1bf
@@ -599,6 +599,7 @@ class ManyToManyRawIdWidgetTest(TestCase):
|
||||
)
|
||||
|
||||
|
||||
@override_settings(ROOT_URLCONF='admin_widgets.urls')
|
||||
class RelatedFieldWidgetWrapperTests(SimpleTestCase):
|
||||
def test_no_can_add_related(self):
|
||||
rel = Individual._meta.get_field('parent').remote_field
|
||||
@@ -633,6 +634,21 @@ class RelatedFieldWidgetWrapperTests(SimpleTestCase):
|
||||
self.assertTrue(wrapper.can_change_related)
|
||||
self.assertFalse(wrapper.can_delete_related)
|
||||
|
||||
def test_custom_widget_render(self):
|
||||
class CustomWidget(forms.Select):
|
||||
def render(self, *args, **kwargs):
|
||||
return 'custom render output'
|
||||
rel = Album._meta.get_field('band').remote_field
|
||||
widget = CustomWidget()
|
||||
wrapper = widgets.RelatedFieldWidgetWrapper(
|
||||
widget, rel, widget_admin_site,
|
||||
can_add_related=True,
|
||||
can_change_related=True,
|
||||
can_delete_related=True,
|
||||
)
|
||||
output = wrapper.render('name', 'value')
|
||||
self.assertIn('custom render output', output)
|
||||
|
||||
|
||||
@override_settings(ROOT_URLCONF='admin_widgets.urls')
|
||||
class AdminWidgetSeleniumTestCase(AdminSeleniumTestCase):
|
||||
|
||||
Reference in New Issue
Block a user