diff options
| author | Saish Mungase <saishmungase@gmail.com> | 2026-02-19 22:50:08 +0530 |
|---|---|---|
| committer | Jacob Walls <jacobtylerwalls@gmail.com> | 2026-02-21 09:52:39 -0500 |
| commit | e85db77e11e37d6ec82526557c4dafe4b30dc699 (patch) | |
| tree | f17a5a805287939159af3311f0a2ef0808614629 /tests/test_client | |
| parent | f45bfa5e2801545c1c8787f59bee3867c9928871 (diff) | |
Fixed #36937 -- Added missing positive permission cases in test_client tests.
Diffstat (limited to 'tests/test_client')
| -rw-r--r-- | tests/test_client/tests.py | 22 | ||||
| -rw-r--r-- | tests/test_client/views.py | 6 |
2 files changed, 22 insertions, 6 deletions
diff --git a/tests/test_client/tests.py b/tests/test_client/tests.py index d1d329aff9..2c2e394b20 100644 --- a/tests/test_client/tests.py +++ b/tests/test_client/tests.py @@ -25,7 +25,7 @@ import itertools import tempfile from unittest import mock -from django.contrib.auth.models import User +from django.contrib.auth.models import Permission, User from django.core import mail from django.http import HttpResponse, HttpResponseNotAllowed from django.test import ( @@ -814,7 +814,15 @@ class ClientTest(TestCase): response, "/accounts/login/?next=/permission_protected_view/" ) - # TODO: Log in with right permissions and request the page again + permission = Permission.objects.get( + content_type__app_label="auth", codename="add_user" + ) + self.u1.user_permissions.add(permission) + + # Request the page again. Access is granted. + response = self.client.get("/permission_protected_view/") + self.assertEqual(response.status_code, 200) + self.assertEqual(response.context["user"].username, "testclient") def test_view_with_permissions_exception(self): """ @@ -853,7 +861,15 @@ class ClientTest(TestCase): response, "/accounts/login/?next=/permission_protected_method_view/" ) - # TODO: Log in with right permissions and request the page again + permission = Permission.objects.get( + content_type__app_label="auth", codename="add_user" + ) + self.u1.user_permissions.add(permission) + + # Request the page again. Access is granted. + response = self.client.get("/permission_protected_method_view/") + self.assertEqual(response.status_code, 200) + self.assertEqual(response.context["user"].username, "testclient") def test_external_redirect(self): response = self.client.get("/django_project_redirect/") diff --git a/tests/test_client/views.py b/tests/test_client/views.py index 96e0142dd3..e1691ad56d 100644 --- a/tests/test_client/views.py +++ b/tests/test_client/views.py @@ -304,11 +304,11 @@ def _permission_protected_view(request): return HttpResponse(t.render(c)) -permission_protected_view = permission_required("permission_not_granted")( +permission_protected_view = permission_required("auth.add_user")( _permission_protected_view ) permission_protected_view_exception = permission_required( - "permission_not_granted", raise_exception=True + "auth.add_user", raise_exception=True )(_permission_protected_view) @@ -323,7 +323,7 @@ class _ViewManager: c = Context({"user": request.user}) return HttpResponse(t.render(c)) - @method_decorator(permission_required("permission_not_granted")) + @method_decorator(permission_required("auth.add_user")) def permission_protected_view(self, request): t = Template( "This is a permission protected test using a method. " |
