[Checkins] SVN: Sandbox/ulif/megrok.login/src/megrok/login/tests/unset.py Test behaviour when megrok.login is not used.

Uli Fouquet uli at gnufix.de
Fri Dec 5 19:21:34 EST 2008


Log message for revision 93711:
  Test behaviour when megrok.login is not used.

Changed:
  A   Sandbox/ulif/megrok.login/src/megrok/login/tests/unset.py

-=-
Added: Sandbox/ulif/megrok.login/src/megrok/login/tests/unset.py
===================================================================
--- Sandbox/ulif/megrok.login/src/megrok/login/tests/unset.py	                        (rev 0)
+++ Sandbox/ulif/megrok.login/src/megrok/login/tests/unset.py	2008-12-06 00:21:34 UTC (rev 93711)
@@ -0,0 +1,43 @@
+"""
+
+:Test-Layer: functional
+
+If the `megrok.login.enable` directive is not used, we get the
+standard behaviour, a HTTP error: 401 Unauthorized when trying to
+access a protected view.
+
+We create an instance of App and store it in the ZODB::
+
+  >>> from megrok.login.tests.unset import App
+  >>> root = getRootFolder()
+  >>> root['app'] = App()
+
+  >>> from zope.testbrowser.testing import Browser
+  >>> browser = Browser()
+  >>> browser.open('http://localhost/app')
+  Traceback (most recent call last):
+  ...
+  HTTPError: HTTP Error 401: Unauthorized
+
+We can, however, use basic-auth::
+
+  >>> browser.addHeader('Authorization', 'Basic mgr:mgrpw')
+  >>> browser.open('http://localhost/app')
+  >>> browser.headers['status']
+  '200 Ok'
+  
+
+"""
+import grok
+
+class ManageApp(grok.Permission):
+    grok.name('app.ManageRaw')
+
+class App(grok.Application, grok.Container):
+    pass
+
+class Index(grok.View):
+    grok.require('app.ManageRaw')
+
+    def render(self):
+        return "Hi!"



More information about the Checkins mailing list