From e7eff73ad565d5c8f60ab1b8f4f4269765d03eef Mon Sep 17 00:00:00 2001 From: jun0jang Date: Wed, 6 Nov 2019 15:46:18 +0900 Subject: [PATCH] Add test override permission code --- tests/test_permissions.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/tests/test_permissions.py b/tests/test_permissions.py index b6178c0bb..71dbf0a37 100644 --- a/tests/test_permissions.py +++ b/tests/test_permissions.py @@ -438,6 +438,7 @@ class BasicPerm(permissions.BasePermission): class BasicPermWithDetail(permissions.BasePermission): message = 'Custom: You cannot access this resource' + code = 'custom_resource_permission_denied' def has_permission(self, request, view): return False @@ -450,6 +451,7 @@ class BasicObjectPerm(permissions.BasePermission): class BasicObjectPermWithDetail(permissions.BasePermission): message = 'Custom: You cannot access this resource' + code = 'custom_resource_permission_denied' def has_object_permission(self, request, view, obj): return False @@ -492,30 +494,39 @@ class CustomPermissionsTests(TestCase): credentials = basic_auth_header('username', 'password') self.request = factory.get('/1', format='json', HTTP_AUTHORIZATION=credentials) self.custom_message = 'Custom: You cannot access this resource' + self.custom_code = 'custom_resource_permission_denied' def test_permission_denied(self): response = denied_view(self.request, pk=1) detail = response.data.get('detail') + code = response.data.get('code') self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN) self.assertNotEqual(detail, self.custom_message) + self.assertNotEqual(code, self.custom_code) def test_permission_denied_with_custom_detail(self): response = denied_view_with_detail(self.request, pk=1) detail = response.data.get('detail') + code = response.data.get('code') self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN) self.assertEqual(detail, self.custom_message) + self.assertEqual(code, self.custom_code) def test_permission_denied_for_object(self): response = denied_object_view(self.request, pk=1) detail = response.data.get('detail') + code = response.data.get('code') self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN) self.assertNotEqual(detail, self.custom_message) + self.assertNotEqual(code, self.custom_code) def test_permission_denied_for_object_with_custom_detail(self): response = denied_object_view_with_detail(self.request, pk=1) detail = response.data.get('detail') + code = response.data.get('code') self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN) self.assertEqual(detail, self.custom_message) + self.assertEqual(code, self.custom_code) class PermissionsCompositionTests(TestCase):