summaryrefslogtreecommitdiff
path: root/tests/admin_widgets/tests.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/admin_widgets/tests.py')
-rw-r--r--tests/admin_widgets/tests.py23
1 files changed, 23 insertions, 0 deletions
diff --git a/tests/admin_widgets/tests.py b/tests/admin_widgets/tests.py
index f7c2a7865c..623fa39bc1 100644
--- a/tests/admin_widgets/tests.py
+++ b/tests/admin_widgets/tests.py
@@ -687,6 +687,29 @@ class RelatedFieldWidgetWrapperTests(SimpleTestCase):
wrapper = widgets.RelatedFieldWidgetWrapper(widget, rel, widget_admin_site)
self.assertIs(wrapper.value_omitted_from_data({}, {}, 'band'), False)
+ def test_widget_is_hidden(self):
+ rel = Album._meta.get_field('band').remote_field
+ widget = forms.HiddenInput()
+ widget.choices = ()
+ wrapper = widgets.RelatedFieldWidgetWrapper(widget, rel, widget_admin_site)
+ self.assertIs(wrapper.is_hidden, True)
+ context = wrapper.get_context('band', None, {})
+ self.assertIs(context['is_hidden'], True)
+ output = wrapper.render('name', 'value')
+ # Related item links are hidden.
+ self.assertNotIn('<a ', output)
+
+ def test_widget_is_not_hidden(self):
+ rel = Album._meta.get_field('band').remote_field
+ widget = forms.Select()
+ wrapper = widgets.RelatedFieldWidgetWrapper(widget, rel, widget_admin_site)
+ self.assertIs(wrapper.is_hidden, False)
+ context = wrapper.get_context('band', None, {})
+ self.assertIs(context['is_hidden'], False)
+ output = wrapper.render('name', 'value')
+ # Related item links are present.
+ self.assertIn('<a ', output)
+
@override_settings(ROOT_URLCONF='admin_widgets.urls')
class AdminWidgetSeleniumTestCase(AdminSeleniumTestCase):