mirror of
https://github.com/django/django.git
synced 2025-10-24 06:06:09 +00:00
Fixed #31527 -- Allowed admindocs index to handle non-string URLconfs.
This commit is contained in:
@@ -2,6 +2,7 @@ import sys
|
||||
import unittest
|
||||
|
||||
from django.conf import settings
|
||||
from django.contrib import admin
|
||||
from django.contrib.admindocs import utils, views
|
||||
from django.contrib.admindocs.views import get_return_data_type, simplify_regex
|
||||
from django.contrib.sites.models import Site
|
||||
@@ -9,7 +10,8 @@ from django.db import models
|
||||
from django.db.models import fields
|
||||
from django.test import SimpleTestCase, modify_settings, override_settings
|
||||
from django.test.utils import captured_stderr
|
||||
from django.urls import reverse
|
||||
from django.urls import include, path, reverse
|
||||
from django.utils.functional import SimpleLazyObject
|
||||
|
||||
from .models import Company, Person
|
||||
from .tests import AdminDocsTestCase, TestDataMixin
|
||||
@@ -136,6 +138,21 @@ class AdminDocViewTests(TestDataMixin, AdminDocsTestCase):
|
||||
response = self.client.get(reverse('django-admindocs-views-index'))
|
||||
self.assertContains(response, 'View documentation')
|
||||
|
||||
def test_callable_urlconf(self):
|
||||
"""
|
||||
Index view should correctly resolve view patterns when ROOT_URLCONF is
|
||||
not a string.
|
||||
"""
|
||||
def urlpatterns():
|
||||
return (
|
||||
path('admin/doc/', include('django.contrib.admindocs.urls')),
|
||||
path('admin/', admin.site.urls),
|
||||
)
|
||||
|
||||
with self.settings(ROOT_URLCONF=SimpleLazyObject(urlpatterns)):
|
||||
response = self.client.get(reverse('django-admindocs-views-index'))
|
||||
self.assertEqual(response.status_code, 200)
|
||||
|
||||
|
||||
@override_settings(TEMPLATES=[{
|
||||
'NAME': 'ONE',
|
||||
|
||||
Reference in New Issue
Block a user