diff options
| author | Collin Anderson <cmawebsite@gmail.com> | 2017-02-20 08:48:03 -0500 |
|---|---|---|
| committer | Tim Graham <timograham@gmail.com> | 2017-02-20 08:48:17 -0500 |
| commit | 808d33c1bf15e6fba38b361e47c60a0b8208b2e0 (patch) | |
| tree | 910f58bfd825b66a021fdfd76442b195e5628d23 /tests/admin_widgets/tests.py | |
| parent | 447c6802f0a19d62026f2a8c84a479377ce80b20 (diff) | |
[1.11.x] Fixed #27850 -- Made RelatedFieldWidgetWrapper call render() of the wrapped widget.
Backport of fb7e0e01af5364987de7fc95ae4d66e22130f2bc from master
Diffstat (limited to 'tests/admin_widgets/tests.py')
| -rw-r--r-- | tests/admin_widgets/tests.py | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/tests/admin_widgets/tests.py b/tests/admin_widgets/tests.py index b74df4e251..8c05fa4331 100644 --- a/tests/admin_widgets/tests.py +++ b/tests/admin_widgets/tests.py @@ -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): |
