mirror of
https://github.com/django/django.git
synced 2025-10-23 21:59:11 +00:00
Fixed #24917 -- Made admindocs display model methods that take arguments.
This commit is contained in:
@@ -246,7 +246,7 @@ class TestModelDetailView(TestDataMixin, AdminDocsTestCase):
|
||||
def setUp(self):
|
||||
self.client.login(username='super', password='secret')
|
||||
with captured_stderr() as self.docutils_stderr:
|
||||
self.response = self.client.get(reverse('django-admindocs-models-detail', args=['admin_docs', 'person']))
|
||||
self.response = self.client.get(reverse('django-admindocs-models-detail', args=['admin_docs', 'Person']))
|
||||
|
||||
def test_method_excludes(self):
|
||||
"""
|
||||
@@ -261,6 +261,34 @@ class TestModelDetailView(TestDataMixin, AdminDocsTestCase):
|
||||
self.assertNotContains(self.response, "<td>set_status</td>")
|
||||
self.assertNotContains(self.response, "<td>save_changes</td>")
|
||||
|
||||
def test_methods_with_arguments(self):
|
||||
"""
|
||||
Methods that take arguments should also displayed.
|
||||
"""
|
||||
self.assertContains(self.response, "<h3>Methods with arguments</h3>")
|
||||
self.assertContains(self.response, "<td>rename_company</td>")
|
||||
self.assertContains(self.response, "<td>dummy_function</td>")
|
||||
self.assertContains(self.response, "<td>suffix_company_name</td>")
|
||||
|
||||
def test_methods_with_arguments_display_arguments(self):
|
||||
"""
|
||||
Methods with arguments should have their arguments displayed.
|
||||
"""
|
||||
self.assertContains(self.response, "<td>new_name</td>")
|
||||
|
||||
def test_methods_with_arguments_display_arguments_default_value(self):
|
||||
"""
|
||||
Methods with keyword arguments should have their arguments displayed.
|
||||
"""
|
||||
self.assertContains(self.response, "<td>suffix='ltd'</td>")
|
||||
|
||||
def test_methods_with_multiple_arguments_display_arguments(self):
|
||||
"""
|
||||
Methods with multiple arguments should have all their arguments
|
||||
displayed, but omitting 'self'.
|
||||
"""
|
||||
self.assertContains(self.response, "<td>baz, rox, *some_args, **some_kwargs</td>")
|
||||
|
||||
def test_method_data_types(self):
|
||||
"""
|
||||
We should be able to get a basic idea of the type returned
|
||||
@@ -368,6 +396,9 @@ class TestModelDetailView(TestDataMixin, AdminDocsTestCase):
|
||||
self.assertContains(self.response, body, html=True)
|
||||
self.assertContains(self.response, model_body, html=True)
|
||||
|
||||
def test_model_detail_title(self):
|
||||
self.assertContains(self.response, '<h1>admin_docs.Person</h1>', html=True)
|
||||
|
||||
|
||||
@unittest.skipUnless(utils.docutils_is_available, "no docutils installed.")
|
||||
class TestUtils(AdminDocsTestCase):
|
||||
|
||||
Reference in New Issue
Block a user