Commit d616c159 by tdruez Committed by GitHub

Added a test to cover the DjangoModelPermissions #4927 issue

`DjangoObjectPermissions` and `DjangoModelPermissions` are now properly cover for the `METHOD_NOT_ALLOWED` issue
parent e9a68e57
...@@ -202,7 +202,11 @@ class ModelPermissionsIntegrationTests(TestCase): ...@@ -202,7 +202,11 @@ class ModelPermissionsIntegrationTests(TestCase):
def test_calling_method_not_allowed(self): def test_calling_method_not_allowed(self):
request = factory.generic('METHOD_NOT_ALLOWED', '/') request = factory.generic('METHOD_NOT_ALLOWED', '/')
response = object_permissions_list_view(request) response = root_view(request)
self.assertEqual(response.status_code, status.HTTP_405_METHOD_NOT_ALLOWED)
request = factory.generic('METHOD_NOT_ALLOWED', '/1')
response = instance_view(request, pk='1')
self.assertEqual(response.status_code, status.HTTP_405_METHOD_NOT_ALLOWED) self.assertEqual(response.status_code, status.HTTP_405_METHOD_NOT_ALLOWED)
...@@ -389,6 +393,11 @@ class ObjectPermissionsIntegrationTests(TestCase): ...@@ -389,6 +393,11 @@ class ObjectPermissionsIntegrationTests(TestCase):
self.assertEqual(response.status_code, status.HTTP_200_OK) self.assertEqual(response.status_code, status.HTTP_200_OK)
self.assertListEqual(response.data, []) self.assertListEqual(response.data, [])
def test_cannot_method_not_allowed(self):
request = factory.generic('METHOD_NOT_ALLOWED', '/')
response = object_permissions_list_view(request)
self.assertEqual(response.status_code, status.HTTP_405_METHOD_NOT_ALLOWED)
class BasicPerm(permissions.BasePermission): class BasicPerm(permissions.BasePermission):
def has_permission(self, request, view): def has_permission(self, request, view):
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment