[Checkins] SVN: zope.globalrequest/trunk/s set up functional test using a testbrowser

Andreas Zeidler az at zitc.de
Thu Jan 15 09:43:40 EST 2009


Log message for revision 94748:
  set up functional test using a testbrowser

Changed:
  U   zope.globalrequest/trunk/setup.py
  U   zope.globalrequest/trunk/src/zope/globalrequest/README.txt
  A   zope.globalrequest/trunk/src/zope/globalrequest/ftesting.zcml
  U   zope.globalrequest/trunk/src/zope/globalrequest/tests.py

-=-
Modified: zope.globalrequest/trunk/setup.py
===================================================================
--- zope.globalrequest/trunk/setup.py	2009-01-15 14:43:33 UTC (rev 94747)
+++ zope.globalrequest/trunk/setup.py	2009-01-15 14:43:40 UTC (rev 94748)
@@ -37,6 +37,9 @@
       extras_require = dict(
           test = [
               'zope.testing',
+              'zope.app.publisher',
+              'zope.app.securitypolicy',
+              'zope.testbrowser',
           ],
       ),
       entry_points = '',

Modified: zope.globalrequest/trunk/src/zope/globalrequest/README.txt
===================================================================
--- zope.globalrequest/trunk/src/zope/globalrequest/README.txt	2009-01-15 14:43:33 UTC (rev 94747)
+++ zope.globalrequest/trunk/src/zope/globalrequest/README.txt	2009-01-15 14:43:40 UTC (rev 94748)
@@ -13,3 +13,9 @@
   >>> IGlobalRequest
   <InterfaceClass zope.globalrequest.interfaces.IGlobalRequest>
 
+  >>> from zope.testbrowser.testing import Browser
+  >>> browser = Browser()
+  >>> browser.open('http://localhost/')
+  >>> browser.isHtml
+  True
+

Added: zope.globalrequest/trunk/src/zope/globalrequest/ftesting.zcml
===================================================================
--- zope.globalrequest/trunk/src/zope/globalrequest/ftesting.zcml	                        (rev 0)
+++ zope.globalrequest/trunk/src/zope/globalrequest/ftesting.zcml	2009-01-15 14:43:40 UTC (rev 94748)
@@ -0,0 +1,28 @@
+<configure
+    xmlns="http://namespaces.zope.org/zope"
+    xmlns:browser="http://namespaces.zope.org/browser"
+    i18n_domain="zope"
+    package="zope.globalrequest">
+
+  <!-- This file is the equivalent of site.zcml and it is -->
+  <!-- used for functional testing setup -->
+
+  <include package="zope.app.zcmlfiles" />
+  <include package="zope.app.authentication" />
+
+  <unauthenticatedPrincipal
+      id="zope.anybody"
+      title="Unauthenticated User" />
+
+  <include package="zope.app.securitypolicy" file="meta.zcml"/>
+
+  <securityPolicy
+      component="zope.securitypolicy.zopepolicy.ZopeSecurityPolicy" />
+
+  <role id="zope.Anonymous" title="Everybody"
+      description="All users have this role implicitly" />
+
+  <grant permission="zope.View"
+      role="zope.Anonymous" />
+
+</configure>

Modified: zope.globalrequest/trunk/src/zope/globalrequest/tests.py
===================================================================
--- zope.globalrequest/trunk/src/zope/globalrequest/tests.py	2009-01-15 14:43:33 UTC (rev 94747)
+++ zope.globalrequest/trunk/src/zope/globalrequest/tests.py	2009-01-15 14:43:40 UTC (rev 94748)
@@ -1,14 +1,21 @@
 from unittest import TestSuite
-from zope.testing.doctest import DocFileSuite
+from zope.testing import doctest
 from zope.testing.cleanup import cleanUp
+from zope.app.testing import functional
+from os.path import join, abspath, dirname
 
 
 def tearDown(test):
     cleanUp()
 
+testLayer = functional.ZCMLLayer(
+    join(abspath(dirname(__file__)), 'ftesting.zcml'),
+    __name__, 'TestBrowserLayer', allow_teardown=True)
+
 def test_suite():
-    return TestSuite([
-        DocFileSuite('README.txt', package='zope.globalrequest',
-            tearDown=tearDown)
-    ])
+    flags = doctest.NORMALIZE_WHITESPACE | doctest.ELLIPSIS
+    readme = functional.FunctionalDocFileSuite('README.txt',
+        package='zope.globalrequest', optionflags=flags, tearDown=tearDown)
+    readme.layer = testLayer
+    return TestSuite((readme,))
 



More information about the Checkins mailing list