diff options
author | daniel a rios <misterrios@gmail.com> | 2019-06-21 17:37:41 +0200 |
---|---|---|
committer | Mariusz Felisiak <felisiak.mariusz@gmail.com> | 2019-06-24 11:30:26 +0200 |
commit | d640c71fa35640b4c13107c074be2f52c52ad861 (patch) | |
tree | f61c3363c9e3fe9d256685984ef3c7e68a4aead8 /tests/urlpatterns | |
parent | b24e7638465867a206f3654f61b6fb0abcc96022 (diff) | |
download | django-d640c71fa35640b4c13107c074be2f52c52ad861.tar.gz |
Refs #26431 -- Added tests for resolving URL and translate_url() with provided optional parameter.
Diffstat (limited to 'tests/urlpatterns')
-rw-r--r-- | tests/urlpatterns/path_urls.py | 1 | ||||
-rw-r--r-- | tests/urlpatterns/tests.py | 6 |
2 files changed, 7 insertions, 0 deletions
diff --git a/tests/urlpatterns/path_urls.py b/tests/urlpatterns/path_urls.py index 953fe6b6d7..b40801b39d 100644 --- a/tests/urlpatterns/path_urls.py +++ b/tests/urlpatterns/path_urls.py @@ -11,6 +11,7 @@ urlpatterns = [ path('users/<id>/', views.empty_view, name='user-with-id'), path('included_urls/', include('urlpatterns.included_urls')), re_path(r'^regex/(?P<pk>[0-9]+)/$', views.empty_view, name='regex'), + re_path(r'^regex_optional/(?P<arg1>\d+)/(?:(?P<arg2>\d+)/)?', views.empty_view, name='regex_optional'), path('', include('urlpatterns.more_urls')), path('<lang>/<path:url>/', views.empty_view, name='lang-and-path'), ] diff --git a/tests/urlpatterns/tests.py b/tests/urlpatterns/tests.py index 74503e4518..66212d7df8 100644 --- a/tests/urlpatterns/tests.py +++ b/tests/urlpatterns/tests.py @@ -54,6 +54,12 @@ class SimplifiedURLTests(SimpleTestCase): self.assertEqual(match.kwargs, {'pk': '1'}) self.assertEqual(match.route, '^regex/(?P<pk>[0-9]+)/$') + def test_re_path_with_optional_parameter(self): + match = resolve('/regex_optional/1/2/') + self.assertEqual(match.url_name, 'regex_optional') + self.assertEqual(match.kwargs, {'arg1': '1', 'arg2': '2'}) + self.assertEqual(match.route, r'^regex_optional/(?P<arg1>\d+)/(?:(?P<arg2>\d+)/)?') + def test_path_lookup_with_inclusion(self): match = resolve('/included_urls/extra/something/') self.assertEqual(match.url_name, 'inner-extra') |