summaryrefslogtreecommitdiff
path: root/tests/auth_tests/urls.py
diff options
context:
space:
mode:
authorNick Pope <nick.pope@flightdataservices.com>2018-03-12 15:48:46 +0000
committerTim Graham <timograham@gmail.com>2018-04-19 10:21:24 -0400
commitdf90e462d91d3a77aa89b69d791bf17c2bf7ff9b (patch)
tree5e154830e7ecac46e1faa47ff0e7ab3ff96ff701 /tests/auth_tests/urls.py
parentc2598a6f4d3ddaf27e9d6d240e7efe664504d6ad (diff)
Fixed #29212 -- Doc'd redirect loop if @permission_required used with redirect_authenticated_user.
Diffstat (limited to 'tests/auth_tests/urls.py')
-rw-r--r--tests/auth_tests/urls.py24
1 files changed, 22 insertions, 2 deletions
diff --git a/tests/auth_tests/urls.py b/tests/auth_tests/urls.py
index b69c554bc8..9dc23cee88 100644
--- a/tests/auth_tests/urls.py
+++ b/tests/auth_tests/urls.py
@@ -1,14 +1,14 @@
from django.conf.urls import url
from django.contrib import admin
from django.contrib.auth import views
-from django.contrib.auth.decorators import login_required
+from django.contrib.auth.decorators import login_required, permission_required
from django.contrib.auth.forms import AuthenticationForm
from django.contrib.auth.urls import urlpatterns as auth_urlpatterns
from django.contrib.messages.api import info
from django.http import HttpRequest, HttpResponse
from django.shortcuts import render
from django.template import RequestContext, Template
-from django.urls import reverse_lazy
+from django.urls import path, reverse_lazy
from django.views.decorators.cache import never_cache
@@ -62,6 +62,22 @@ def userpage(request):
pass
+@permission_required('unknown.permission')
+def permission_required_redirect(request):
+ pass
+
+
+@permission_required('unknown.permission', raise_exception=True)
+def permission_required_exception(request):
+ pass
+
+
+@login_required
+@permission_required('unknown.permission', raise_exception=True)
+def login_and_permission_required_exception(request):
+ pass
+
+
uid_token = r'(?P<uidb64>[0-9A-Za-z_\-]+)/(?P<token>[0-9A-Za-z]{1,13}-[0-9A-Za-z]{1,20})'
# special urls for auth test cases
@@ -119,6 +135,10 @@ urlpatterns = auth_urlpatterns + [
url(r'^login/allowed_hosts/$',
views.LoginView.as_view(success_url_allowed_hosts={'otherserver'})),
+ path('permission_required_redirect/', permission_required_redirect),
+ path('permission_required_exception/', permission_required_exception),
+ path('login_and_permission_required_exception/', login_and_permission_required_exception),
+
# This line is only required to render the password reset with is_admin=True
url(r'^admin/', admin.site.urls),
]