diff options
| author | Éric Araujo <earaujo@caravan.coop> | 2019-12-14 13:32:07 -0500 |
|---|---|---|
| committer | Éric Araujo <earaujo@caravan.coop> | 2019-12-14 13:32:07 -0500 |
| commit | 0168300b0da3c79e05ec87aa777e04674a86cebb (patch) | |
| tree | 4e1f38841af1e6f8fd20b4e536ddbe946c294911 /tests | |
| parent | 4a46827769bbe181070a74927aa4e988a4cc3112 (diff) | |
| download | pyramid-0168300b0da3c79e05ec87aa777e04674a86cebb.tar.gz pyramid-0168300b0da3c79e05ec87aa777e04674a86cebb.tar.bz2 pyramid-0168300b0da3c79e05ec87aa777e04674a86cebb.zip | |
start reworking security policy
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/pkgs/securityapp/__init__.py | 8 | ||||
| -rw-r--r-- | tests/test_authorization.py | 3 | ||||
| -rw-r--r-- | tests/test_security.py | 14 | ||||
| -rw-r--r-- | tests/test_testing.py | 2 | ||||
| -rw-r--r-- | tests/test_viewderivers.py | 5 |
5 files changed, 21 insertions, 11 deletions
diff --git a/tests/pkgs/securityapp/__init__.py b/tests/pkgs/securityapp/__init__.py index 6ddba585b..b869ab541 100644 --- a/tests/pkgs/securityapp/__init__.py +++ b/tests/pkgs/securityapp/__init__.py @@ -4,9 +4,13 @@ from pyramid.security import Allowed, Denied class SecurityPolicy: def identify(self, request): + ... + + def authenticated_userid(self, request): return request.environ.get('REMOTE_USER') - def permits(self, request, context, identity, permission): + def permits(self, request, context, permission): + identity = self.identify(request) if identity and permission == 'foo': return Allowed('') else: @@ -15,7 +19,7 @@ class SecurityPolicy: def remember(self, request, userid, **kw): raise NotImplementedError() # pragma: no cover - def forget(self, request): + def forget(self, request, **kw): raise NotImplementedError() # pragma: no cover diff --git a/tests/test_authorization.py b/tests/test_authorization.py index 399b3da60..b50c1ae3b 100644 --- a/tests/test_authorization.py +++ b/tests/test_authorization.py @@ -3,6 +3,9 @@ import unittest from pyramid.testing import cleanUp +# XXX fix all tests to add request, remove principals + + class TestACLAuthorizationPolicy(unittest.TestCase): def setUp(self): cleanUp() diff --git a/tests/test_security.py b/tests/test_security.py index 2a8847f3b..726fbbbf3 100644 --- a/tests/test_security.py +++ b/tests/test_security.py @@ -350,7 +350,7 @@ class TestAuthenticatedUserId(unittest.TestCase): request = _makeRequest() _registerAuthenticationPolicy(request.registry, 'yo') _registerSecurityPolicy(request.registry, 'wat') - self.assertEqual(request.authenticated_userid, 'yo') + self.assertEqual(request.authenticated_userid, 'wat') def test_with_security_policy(self): request = _makeRequest() @@ -511,10 +511,7 @@ class TestLegacySecurityPolicy(unittest.TestCase): _registerAuthenticationPolicy(request.registry, ['p1', 'p2']) _registerAuthorizationPolicy(request.registry, True) - self.assertIs( - policy.permits(request, request.context, 'userid', 'permission'), - True, - ) + self.assertTrue(policy.permits(request, request.context, 'permission')) _TEST_HEADER = 'X-Pyramid-Test' @@ -532,7 +529,10 @@ class DummySecurityPolicy: def identify(self, request): return self.result - def permits(self, request, context, identity, permission): + def authenticated_userid(self, request): + return self.result + + def permits(self, request, context, permission): return self.result def remember(self, request, userid, **kw): @@ -540,7 +540,7 @@ class DummySecurityPolicy: self._header_remembered = headers[0] return headers - def forget(self, request): + def forget(self, request, **kw): headers = [(_TEST_HEADER, 'logout')] self._header_forgotten = headers[0] return headers diff --git a/tests/test_testing.py b/tests/test_testing.py index ebeafe21d..d0f23a116 100644 --- a/tests/test_testing.py +++ b/tests/test_testing.py @@ -33,7 +33,7 @@ class TestDummySecurityPolicy(unittest.TestCase): def test_permits(self): policy = self._makeOne() - self.assertEqual(policy.permits(None, None, None, None), True) + self.assertTrue(policy.permits(None, None, None)) def test_forget(self): policy = self._makeOne() diff --git a/tests/test_viewderivers.py b/tests/test_viewderivers.py index e47296b50..f1aa00e5b 100644 --- a/tests/test_viewderivers.py +++ b/tests/test_viewderivers.py @@ -2086,7 +2086,10 @@ class DummySecurityPolicy: def identify(self, request): return 123 - def permits(self, request, context, identity, permission): + def authenticated_userid(self, request): + return 123 + + def permits(self, request, context, permission): return self.permitted |
