MCPcopy
hub / github.com/django/django / _test_readonly_foreignkey_links

Method _test_readonly_foreignkey_links

tests/admin_views/tests.py:7745–7786  ·  view source on GitHub ↗

ForeignKey readonly fields render as links if the target model is registered in admin.

(self, admin_site)

Source from the content-addressed store, hash-verified

7743 )
7744
7745 def _test_readonly_foreignkey_links(self, admin_site):
7746 """
7747 ForeignKey readonly fields render as links if the target model is
7748 registered in admin.
7749 """
7750 chapter = Chapter.objects.create(
7751 title="Chapter 1",
7752 content="content",
7753 book=Book.objects.create(name="Book 1"),
7754 )
7755 language = Language.objects.create(iso="_40", name="Test")
7756 obj = ReadOnlyRelatedField.objects.create(
7757 chapter=chapter,
7758 language=language,
7759 user=self.superuser,
7760 )
7761 response = self.client.get(
7762 reverse(
7763 f"{admin_site}:admin_views_readonlyrelatedfield_change", args=(obj.pk,)
7764 ),
7765 )
7766 # Related ForeignKey object registered in admin.
7767 user_url = reverse(f"{admin_site}:auth_user_change", args=(self.superuser.pk,))
7768 self.assertContains(
7769 response,
7770 '<div class="readonly"><a href="%s">super</a></div>' % user_url,
7771 html=True,
7772 )
7773 # Related ForeignKey with the string primary key registered in admin.
7774 language_url = reverse(
7775 f"{admin_site}:admin_views_language_change",
7776 args=(quote(language.pk),),
7777 )
7778 self.assertContains(
7779 response,
7780 '<div class="readonly"><a href="%s">_40</a></div>' % language_url,
7781 html=True,
7782 )
7783 # Related ForeignKey object not registered in admin.
7784 self.assertContains(
7785 response, '<div class="readonly">Chapter 1</div>', html=True
7786 )
7787
7788 def test_readonly_foreignkey_links_default_admin_site(self):
7789 self._test_readonly_foreignkey_links("admin")

Calls 5

reverseFunction · 0.90
quoteFunction · 0.90
assertContainsMethod · 0.80
createMethod · 0.45
getMethod · 0.45

Tested by

no test coverage detected