[Checkins] SVN: zope.testbrowser/branches/jinty-webtest3/s Simplify tests and make 'python setup.py test' work

Brian Sutherland jinty at web.de
Thu Feb 3 04:48:31 EST 2011


Log message for revision 120082:
  Simplify tests and make 'python setup.py test' work

Changed:
  U   zope.testbrowser/branches/jinty-webtest3/setup.py
  U   zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/tests/test_bbb.py
  U   zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/tests/test_browser.py
  U   zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/tests/test_doctests.py
  U   zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/tests/test_wsgi.py

-=-
Modified: zope.testbrowser/branches/jinty-webtest3/setup.py
===================================================================
--- zope.testbrowser/branches/jinty-webtest3/setup.py	2011-02-03 09:46:41 UTC (rev 120081)
+++ zope.testbrowser/branches/jinty-webtest3/setup.py	2011-02-03 09:48:31 UTC (rev 120082)
@@ -25,6 +25,10 @@
     + open('CHANGES.txt').read()
     )
 
+tests_require = ['zope.testing',
+                 'zope.pagetemplate',
+                 'WebTest'],
+
 setup(
     name = 'zope.testbrowser',
     version='4.0.0dev',
@@ -46,7 +50,8 @@
     packages = find_packages('src'),
     package_dir = {'': 'src'},
     namespace_packages = ['zope',],
-    tests_require = ['zope.testing'],
+    test_suite = 'zope.testbrowser.tests',
+    tests_require = tests_require,
     install_requires = [
         # mechanize 0.2.0 folds in ClientForm, makes incompatible API changes
         'mechanize>=0.2.0',
@@ -56,11 +61,7 @@
         'pytz',
         ],
     extras_require = {
-        'test': [
-            'zope.testing',
-            'zope.pagetemplate',
-            'zope.testbrowser [wsgi]',
-            ],
+        'test': tests_require,
         'test_bbb': [
             'zope.testbrowser [test,zope-functional-testing]',
             ],

Modified: zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/tests/test_bbb.py
===================================================================
--- zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/tests/test_bbb.py	2011-02-03 09:46:41 UTC (rev 120081)
+++ zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/tests/test_bbb.py	2011-02-03 09:48:31 UTC (rev 120082)
@@ -16,17 +16,9 @@
 class TestZopeAppTesting(unittest.TestCase):
 
     def test_import(self):
+        try:
+            import zope.app.testing
+        except ImportError:
+            return
         from zope.testbrowser.testing import Browser
         browser = Browser()
-
-def test_suite():
-    suite = unittest.TestSuite()
-    loader = unittest.TestLoader().loadTestsFromTestCase
-
-    try:
-        import zope.app.testing
-        suite.addTest(loader(TestZopeAppTesting))
-    except ImportError:
-        pass
-
-    return suite

Modified: zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/tests/test_browser.py
===================================================================
--- zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/tests/test_browser.py	2011-02-03 09:46:41 UTC (rev 120081)
+++ zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/tests/test_browser.py	2011-02-03 09:48:31 UTC (rev 120082)
@@ -435,3 +435,6 @@
     return doctest.DocTestSuite(
         checker=zope.testbrowser.tests.helper.checker,
         optionflags=doctest.NORMALIZE_WHITESPACE | doctest.ELLIPSIS)
+
+# additional_tests is for setuptools "setup.py test" support
+additional_tests = test_suite

Modified: zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/tests/test_doctests.py
===================================================================
--- zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/tests/test_doctests.py	2011-02-03 09:46:41 UTC (rev 120081)
+++ zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/tests/test_doctests.py	2011-02-03 09:48:31 UTC (rev 120082)
@@ -34,3 +34,6 @@
     wire.level = 2
 
     return unittest.TestSuite((suite, wire))
+
+# additional_tests is for setuptools "setup.py test" support
+additional_tests = test_suite

Modified: zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/tests/test_wsgi.py
===================================================================
--- zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/tests/test_wsgi.py	2011-02-03 09:46:41 UTC (rev 120081)
+++ zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/tests/test_wsgi.py	2011-02-03 09:48:31 UTC (rev 120082)
@@ -13,32 +13,30 @@
 ##############################################################################
 
 import unittest
+from wsgiref.simple_server import demo_app
+
 import zope.testbrowser.wsgi
 
 
-# Copied from PEP #333
-def simple_app(environ, start_response):
-    """Simplest possible application object"""
-    status = '200 OK'
-    response_headers = [('Content-type', 'text/plain')]
-    start_response(status, response_headers)
-    return ['Hello world!\n']
-
-
 class SimpleLayer(zope.testbrowser.wsgi.Layer):
 
     def make_wsgi_app(self):
-        return simple_app
+        return demo_app
 
 SIMPLE_LAYER = SimpleLayer()
 
 
-class TestWSGI(unittest.TestCase):
+class TestWSGILayer(unittest.TestCase):
 
-    layer = SIMPLE_LAYER
+    def setUp(self):
+        # test the layer without depending on zope.testrunner
+        SIMPLE_LAYER.setUp()
 
-    def test_(self):
+    def tearDown(self):
+        SIMPLE_LAYER.tearDown()
+
+    def test_layer(self):
+        """When the layer is setup, the wsgi_app argument is unnecessary"""
         browser = zope.testbrowser.wsgi.Browser()
         browser.open('http://localhost')
-        self.assertEqual('Hello world!\n', browser.contents)
-        # XXX test for authorization header munging is missing
+        self.assertTrue(browser.contents.startswith('Hello world!\n'))



More information about the checkins mailing list