summaryrefslogtreecommitdiff
path: root/repoze/bfg/tests/test_security.py
diff options
context:
space:
mode:
authorChris McDonough <chrism@agendaless.com>2008-07-16 10:48:38 +0000
committerChris McDonough <chrism@agendaless.com>2008-07-16 10:48:38 +0000
commit4ac0ff3cace7dd91c3f3d945b96932deb610d4f7 (patch)
treed03f92ed065fa6304b2f01ab25ae4a0800c02109 /repoze/bfg/tests/test_security.py
parent2466f6eaa2246598dc6cb3c962364773eb4cc64a (diff)
downloadpyramid-4ac0ff3cace7dd91c3f3d945b96932deb610d4f7.tar.gz
pyramid-4ac0ff3cace7dd91c3f3d945b96932deb610d4f7.tar.bz2
pyramid-4ac0ff3cace7dd91c3f3d945b96932deb610d4f7.zip
Add convenience has_permission function.
Diffstat (limited to 'repoze/bfg/tests/test_security.py')
-rw-r--r--repoze/bfg/tests/test_security.py25
1 files changed, 24 insertions, 1 deletions
diff --git a/repoze/bfg/tests/test_security.py b/repoze/bfg/tests/test_security.py
index 8a4c624e9..832cc8a43 100644
--- a/repoze/bfg/tests/test_security.py
+++ b/repoze/bfg/tests/test_security.py
@@ -276,6 +276,27 @@ class RemoteUserACLSecurityPolicy(unittest.TestCase, PlacelessSetup):
self.assertEqual(authorizer_factory.permission, 'view')
self.assertEqual(authorizer_factory.context, context)
+class TestHasPermission(unittest.TestCase):
+ def _getFUT(self):
+ from repoze.bfg.security import has_permission
+ return has_permission
+
+ def _registerSecurityPolicy(self, secpol):
+ import zope.component
+ gsm = zope.component.getGlobalSiteManager()
+ from repoze.bfg.interfaces import ISecurityPolicy
+ gsm.registerUtility(secpol, ISecurityPolicy)
+
+ def test_registered(self):
+ secpol = DummySecurityPolicy(False)
+ self._registerSecurityPolicy(secpol)
+ has_permission = self._getFUT()
+ self.assertEqual(has_permission('view', None, None), False)
+
+ def test_not_registered(self):
+ has_permission = self._getFUT()
+ self.assertEqual(has_permission('view', None, None), True)
+
class TestViewPermission(unittest.TestCase):
def _getTargetClass(self):
@@ -352,7 +373,9 @@ class make_authorizer_factory:
raise NoAuthorizationInformation()
return result
return Authorizer()
-
+
+
+