Loading django/contrib/admindocs/views.py +3 −3 Original line number Diff line number Diff line Loading @@ -394,9 +394,9 @@ non_named_group_matcher = re.compile(r'\(.*?\)') def simplify_regex(pattern): """ Clean up urlpattern regexes into something somewhat readable by Mere Humans: turns something like "^(?P<sport_slug>\w+)/athletes/(?P<athlete_slug>\w+)/$" into "<sport_slug>/athletes/<athlete_slug>/" Clean up urlpattern regexes into something more readable by humans. For example, turn "^(?P<sport_slug>\w+)/athletes/(?P<athlete_slug>\w+)/$" into "/<sport_slug>/athletes/<athlete_slug>/". """ # handle named groups first pattern = named_group_matcher.sub(lambda m: m.group(1), pattern) Loading tests/admin_docs/tests.py +10 −1 Original line number Diff line number Diff line Loading @@ -3,7 +3,7 @@ import unittest from django.conf import settings from django.contrib.admindocs import utils from django.contrib.admindocs.views import get_return_data_type from django.contrib.admindocs.views import get_return_data_type, simplify_regex from django.contrib.auth.models import User from django.contrib.sites.models import Site from django.test import TestCase, modify_settings, override_settings Loading Loading @@ -123,6 +123,15 @@ class AdminDocViewTests(TestDataMixin, AdminDocsTestCase): finally: utils.docutils_is_available = True def test_simplify_regex(self): tests = ( ('^a', '/a'), ('^(?P<a>\w+)/b/(?P<c>\w+)/$', '/<a>/b/<c>/'), ('^(?P<a>\w+)/b/(?P<c>\w+)$', '/<a>/b/<c>'), ) for pattern, output in tests: self.assertEqual(simplify_regex(pattern), output) @override_settings(TEMPLATES=[{ 'NAME': 'ONE', Loading Loading
django/contrib/admindocs/views.py +3 −3 Original line number Diff line number Diff line Loading @@ -394,9 +394,9 @@ non_named_group_matcher = re.compile(r'\(.*?\)') def simplify_regex(pattern): """ Clean up urlpattern regexes into something somewhat readable by Mere Humans: turns something like "^(?P<sport_slug>\w+)/athletes/(?P<athlete_slug>\w+)/$" into "<sport_slug>/athletes/<athlete_slug>/" Clean up urlpattern regexes into something more readable by humans. For example, turn "^(?P<sport_slug>\w+)/athletes/(?P<athlete_slug>\w+)/$" into "/<sport_slug>/athletes/<athlete_slug>/". """ # handle named groups first pattern = named_group_matcher.sub(lambda m: m.group(1), pattern) Loading
tests/admin_docs/tests.py +10 −1 Original line number Diff line number Diff line Loading @@ -3,7 +3,7 @@ import unittest from django.conf import settings from django.contrib.admindocs import utils from django.contrib.admindocs.views import get_return_data_type from django.contrib.admindocs.views import get_return_data_type, simplify_regex from django.contrib.auth.models import User from django.contrib.sites.models import Site from django.test import TestCase, modify_settings, override_settings Loading Loading @@ -123,6 +123,15 @@ class AdminDocViewTests(TestDataMixin, AdminDocsTestCase): finally: utils.docutils_is_available = True def test_simplify_regex(self): tests = ( ('^a', '/a'), ('^(?P<a>\w+)/b/(?P<c>\w+)/$', '/<a>/b/<c>/'), ('^(?P<a>\w+)/b/(?P<c>\w+)$', '/<a>/b/<c>'), ) for pattern, output in tests: self.assertEqual(simplify_regex(pattern), output) @override_settings(TEMPLATES=[{ 'NAME': 'ONE', Loading