From 2864e746871da8229e125b985736af49093e0a83 Mon Sep 17 00:00:00 2001 From: Ben Buchwald Date: Sat, 17 Oct 2020 17:16:19 -0400 Subject: [PATCH] Add failing tests for unimplemented permission method composition --- tests/test_permissions.py | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/tests/test_permissions.py b/tests/test_permissions.py index 4e6cae4b8..e7d4f7219 100644 --- a/tests/test_permissions.py +++ b/tests/test_permissions.py @@ -677,3 +677,21 @@ class PermissionsCompositionTests(TestCase): assert hasperm is False assert mock_deny.call_count == 1 mock_allow.assert_not_called() + + def test_has_permission_not_implemented(self): + request = factory.get('/1', format='json') + request.user = self.user + composed_perm = ~BasicObjectPerm + assert composed_perm().has_permission(request, None) is NotImplemented + assert composed_perm().has_object_permission(request, None, None) is True + + def test_has_object_permission_not_implemented(self): + request = factory.get('/1', format='json') + request.user = self.user + composed_perm = ( + permissions.IsAdminUser | + BasicObjectPerm + ) + assert composed_perm().has_permission(request, None) is False + assert composed_perm().has_object_permission(request, None, None) is False +