[Checkins] SVN: grokcore.security/trunk/src/grokcore/security/test Make tests run

Philipp von Weitershausen philikon at philikon.de
Mon Jul 28 17:23:35 EDT 2008


Log message for revision 88912:
  Make tests run
  

Changed:
  U   grokcore.security/trunk/src/grokcore/security/testing.py
  U   grokcore.security/trunk/src/grokcore/security/tests/security/missing_permission.py
  U   grokcore.security/trunk/src/grokcore/security/tests/security/multiple_require.py

-=-
Modified: grokcore.security/trunk/src/grokcore/security/testing.py
===================================================================
--- grokcore.security/trunk/src/grokcore/security/testing.py	2008-07-28 21:22:05 UTC (rev 88911)
+++ grokcore.security/trunk/src/grokcore/security/testing.py	2008-07-28 21:23:35 UTC (rev 88912)
@@ -13,12 +13,27 @@
 ##############################################################################
 """Grok test helpers
 """
+import martian
+import grokcore.component
 from zope.configuration.config import ConfigurationMachine
 from grokcore.component import zcml
+from grokcore.security import directive
+from grokcore.security import util
 
+class ClasslevelGrokker(martian.ClassGrokker):
+    """Simple grokker that looks for grokk.require() directives on a
+    class and checks whether the permissione exists."""
+    martian.component(grokcore.component.Context)
+    martian.directive(directive.require, name='permission')
+
+    def execute(self, factory, config, permission, **kw):
+        util.check_permission(factory, permission)
+        return True
+
 def grok(module_name):
     config = ConfigurationMachine()
     zcml.do_grok('grokcore.component.meta', config)
     zcml.do_grok('grokcore.security.meta', config)
+    zcml.do_grok('grokcore.security.testing', config)
     zcml.do_grok(module_name, config)
     config.execute_actions()

Modified: grokcore.security/trunk/src/grokcore/security/tests/security/missing_permission.py
===================================================================
--- grokcore.security/trunk/src/grokcore/security/tests/security/missing_permission.py	2008-07-28 21:22:05 UTC (rev 88911)
+++ grokcore.security/trunk/src/grokcore/security/tests/security/missing_permission.py	2008-07-28 21:23:35 UTC (rev 88912)
@@ -5,16 +5,12 @@
     >>> grok.testing.grok(__name__)
     Traceback (most recent call last):
     ...
-    ConfigurationExecutionError: martian.error.GrokError: Undefined permission 'doesnt.exist' in <class 'grok.tests.security.missing_permission.MissingPermission'>. Use grok.Permission first.
+    GrokError: Undefined permission 'doesnt.exist' in <class 'grokcore.security.tests.security.missing_permission.MissingPermission'>. Use grok.Permission first.
+
     ...
 
 """
-
 import grokcore.security as grok
 
-class MissingPermission(object):
+class MissingPermission(grok.Context):
     grok.require('doesnt.exist')
-
-    def render(self):
-        pass
-

Modified: grokcore.security/trunk/src/grokcore/security/tests/security/multiple_require.py
===================================================================
--- grokcore.security/trunk/src/grokcore/security/tests/security/multiple_require.py	2008-07-28 21:22:05 UTC (rev 88911)
+++ grokcore.security/trunk/src/grokcore/security/tests/security/multiple_require.py	2008-07-28 21:23:35 UTC (rev 88912)
@@ -4,7 +4,7 @@
   >>> grok.testing.grok(__name__)
   Traceback (most recent call last):
     ...
-  GrokError: grok.require was called multiple times in <class 'grok.tests.security.multiple_require.MultipleView'>. It may only be set once for a class.
+  GrokError: grok.require was called multiple times in <class 'grokcore.security.tests.security.multiple_require.MultipleView'>. It may only be set once for a class.
 
 """
 import grokcore.security as grok
@@ -15,6 +15,6 @@
 class Two(grok.Permission):
     grok.name('permission.2')
 
-class MultipleView(object):
+class MultipleView(grok.Context):
     grok.require(One)
     grok.require(Two)



More information about the Checkins mailing list