[Checkins] SVN: z3c.etestbrowser/trunk/ Added ``z3c.etestbrowser.wsgi.ExtendedTestBrowser``, a variant that can be used when the test layer was set up using ``using zope.app.wsgi.testlayer``.

Michael Howitz mh at gocept.com
Sat Aug 21 10:54:24 EDT 2010


Log message for revision 115850:
  Added ``z3c.etestbrowser.wsgi.ExtendedTestBrowser``, a variant that can be used when the test layer was set up using ``using zope.app.wsgi.testlayer``.
  

Changed:
  U   z3c.etestbrowser/trunk/CHANGES.txt
  U   z3c.etestbrowser/trunk/setup.py
  U   z3c.etestbrowser/trunk/src/z3c/etestbrowser/tests.py
  A   z3c.etestbrowser/trunk/src/z3c/etestbrowser/wsgi.py
  A   z3c.etestbrowser/trunk/src/z3c/etestbrowser/wsgi.txt

-=-
Modified: z3c.etestbrowser/trunk/CHANGES.txt
===================================================================
--- z3c.etestbrowser/trunk/CHANGES.txt	2010-08-21 14:34:41 UTC (rev 115849)
+++ z3c.etestbrowser/trunk/CHANGES.txt	2010-08-21 14:54:24 UTC (rev 115850)
@@ -5,7 +5,10 @@
 1.4.1 (unreleased)
 ==================
 
-- Nothing changed yet.
+- Added ``z3c.etestbrowser.wsgi.ExtendedTestBrowser``, a variant that can be
+  used when the test layer was set up using ``using
+  zope.app.wsgi.testlayer``. see `Extended testbrowser using
+  zope.app.wsgi.testlayer`_.
 
 
 1.4.0 (2010-07-08)

Modified: z3c.etestbrowser/trunk/setup.py
===================================================================
--- z3c.etestbrowser/trunk/setup.py	2010-08-21 14:34:41 UTC (rev 115849)
+++ z3c.etestbrowser/trunk/setup.py	2010-08-21 14:54:24 UTC (rev 115850)
@@ -11,10 +11,8 @@
 # FOR A PARTICULAR PURPOSE.
 #
 ##############################################################################
-"""Setup for z3c.viewlet package
+"""Setup for z3c.etestbrowser package."""
 
-$Id$
-"""
 import os
 from setuptools import setup, find_packages
 
@@ -31,6 +29,8 @@
           + '\n\n' +
           read('src', 'z3c', 'etestbrowser', 'README.txt')
           + '\n\n' +
+          read('src', 'z3c', 'etestbrowser', 'wsgi.txt')
+          + '\n\n' +
           read('src', 'z3c', 'etestbrowser', 'over_the_wire.txt')
           + '\n\n' +
           read('CHANGES.txt')
@@ -59,7 +59,8 @@
                                 ]),
     install_requires=['setuptools',
                       'lxml>=2.2',
-                      'zope.testbrowser'
+                      'zope.testbrowser',
+                      'zope.app.wsgi >= 3.8',
                      ],
       include_package_data = True,
       zip_safe = False,

Modified: z3c.etestbrowser/trunk/src/z3c/etestbrowser/tests.py
===================================================================
--- z3c.etestbrowser/trunk/src/z3c/etestbrowser/tests.py	2010-08-21 14:34:41 UTC (rev 115849)
+++ z3c.etestbrowser/trunk/src/z3c/etestbrowser/tests.py	2010-08-21 14:54:24 UTC (rev 115850)
@@ -16,20 +16,23 @@
 $Id$
 """
 
+from zope.app.testing import functional
 import doctest
 import os.path
 import unittest
+import z3c.etestbrowser
+import zope.app.wsgi.testlayer
 
-from zope.app.testing import functional
 
-
 layer = functional.ZCMLLayer(
     os.path.join(os.path.split(__file__)[0], 'ftesting.zcml'),
     __name__, 'ETestBrowserLayer')
 
+wsgi_layer = zope.app.wsgi.testlayer.BrowserLayer(z3c.etestbrowser)
 
 def test_suite():
     suite = unittest.TestSuite()
+
     test = functional.FunctionalDocFileSuite(
         "README.txt",
         "over_the_wire.txt",
@@ -37,4 +40,10 @@
         doctest.ELLIPSIS)
     test.layer = layer
     suite.addTest(test)
+
+    wsgi_test = doctest.DocFileSuite(
+        "wsgi.txt",
+        optionflags=doctest.NORMALIZE_WHITESPACE|doctest.ELLIPSIS)
+    wsgi_test.layer = wsgi_layer
+    suite.addTest(wsgi_test)
     return suite

Added: z3c.etestbrowser/trunk/src/z3c/etestbrowser/wsgi.py
===================================================================
--- z3c.etestbrowser/trunk/src/z3c/etestbrowser/wsgi.py	                        (rev 0)
+++ z3c.etestbrowser/trunk/src/z3c/etestbrowser/wsgi.py	2010-08-21 14:54:24 UTC (rev 115850)
@@ -0,0 +1,26 @@
+##############################################################################
+#
+# Copyright (c) 2010 Zope Foundation and Contributors.
+# All Rights Reserved.
+#
+# This software is subject to the provisions of the Zope Public License,
+# Version 2.0 (ZPL).  A copy of the ZPL should accompany this distribution.
+# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
+# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
+# FOR A PARTICULAR PURPOSE.
+#
+##############################################################################
+"""z3c.etestbrowser for zope.app.wsgi.testlayer."""
+
+import z3c.etestbrowser.browser
+import zope.app.wsgi.testlayer
+
+
+class ExtendedTestBrowser(zope.app.wsgi.testlayer.Browser,
+                          z3c.etestbrowser.browser.ExtendedTestBrowser):
+    """An extended testbrowser implementation.
+
+    Based on zope.app.wsgi.testlayer.Browser.
+
+    """


Property changes on: z3c.etestbrowser/trunk/src/z3c/etestbrowser/wsgi.py
___________________________________________________________________
Added: svn:keywords
   + Id Rev Date
Added: svn:eol-style
   + native

Added: z3c.etestbrowser/trunk/src/z3c/etestbrowser/wsgi.txt
===================================================================
--- z3c.etestbrowser/trunk/src/z3c/etestbrowser/wsgi.txt	                        (rev 0)
+++ z3c.etestbrowser/trunk/src/z3c/etestbrowser/wsgi.txt	2010-08-21 14:54:24 UTC (rev 115850)
@@ -0,0 +1,21 @@
+Extended testbrowser using zope.app.wsgi.testlayer
+--------------------------------------------------
+
+There is also a variant in ``z3c.etestbrowser.wsgi`` which can be used when
+the test layer was set up using ``zope.app.wsgi.testlayer`` instead of
+``zope.app.testing``:
+
+Example:
+
+  >>> import z3c.etestbrowser.wsgi
+  >>> browser = z3c.etestbrowser.wsgi.ExtendedTestBrowser()
+  >>> browser.open("http://localhost/")
+  >>> print browser.contents
+  <!DOCTYPE ...>
+  ...
+  </html>
+  >>> browser.etree
+  <Element html at ...>
+  >>> browser.etree.xpath('//body')
+  [<Element body at ...>]
+


Property changes on: z3c.etestbrowser/trunk/src/z3c/etestbrowser/wsgi.txt
___________________________________________________________________
Added: svn:keywords
   + Id Rev Date
Added: svn:eol-style
   + native



More information about the checkins mailing list