[Checkins] SVN: zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/ Now that we have decided on zope-dev to only support one WSGI browser we can de-parameterize the tests. Makes them clearer and easier to follow
Brian Sutherland
jinty at web.de
Thu Feb 3 04:21:36 EST 2011
Log message for revision 120077:
Now that we have decided on zope-dev to only support one WSGI browser we can de-parameterize the tests. Makes them clearer and easier to follow
Changed:
U zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/README.txt
U zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/cookies.txt
U zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/fixed-bugs.txt
U zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/tests/test_doctests.py
D zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/wsgi.txt
-=-
Modified: zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/README.txt
===================================================================
--- zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/README.txt 2011-02-03 08:32:48 UTC (rev 120076)
+++ zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/README.txt 2011-02-03 09:21:35 UTC (rev 120077)
@@ -11,8 +11,8 @@
The ``zope.testbrowser.browser`` module exposes a ``Browser`` class that
simulates a web browser similar to Mozilla Firefox or IE.
- >>> from zope.testbrowser.browser import Browser as RealBrowser
- >>> browser = RealBrowser()
+ >>> from zope.testbrowser.browser import Browser
+ >>> browser = Browser()
This version of the browser object can be used to access any web site just as
you would do using a normal web browser.
@@ -24,9 +24,9 @@
`WebTest`_ and can be used to do functional testing of WSGI
applications, it can be imported from ``zope.testbrowser.wsgi``:
- >>> from zope.testbrowser.wsgi import Browser as WSGIBrowser
+ >>> from zope.testbrowser.wsgi import Browser
>>> from wsgiref.simple_server import demo_app
- >>> browser = WSGIBrowser('http://localhost/', wsgi_app=demo_app)
+ >>> browser = Browser('http://localhost/', wsgi_app=demo_app)
>>> print browser.contents
Hello world!
...
@@ -56,11 +56,14 @@
Bowser Usage
------------
-To allow this test to be run against different implementations, we will use a
-Browser object from the test globals. An initial page to load can be passed to
-the ``Browser`` constructor:
+We will test this browser against a WSGI test application:
- >>> browser = Browser('http://localhost/@@/testbrowser/simple.html')
+ >>> from zope.testbrowser.ftests.wsgitestapp import WSGITestApplication
+ >>> wsgi_app = WSGITestApplication()
+
+An initial page to load can be passed to the ``Browser`` constructor:
+
+ >>> browser = Browser('http://localhost/@@/testbrowser/simple.html', wsgi_app=wsgi_app)
>>> browser.url
'http://localhost/@@/testbrowser/simple.html'
@@ -1223,7 +1226,7 @@
If the HTML page contains only one form, no arguments to `getForm` are
needed:
- >>> oneform = Browser()
+ >>> oneform = Browser(wsgi_app=wsgi_app)
>>> oneform.open('http://localhost/@@/testbrowser/oneform.html')
>>> form = oneform.getForm()
@@ -1399,3 +1402,20 @@
Traceback (most recent call last):
...
AttributeError: 'Link' object has no attribute 'nonexistant'
+
+
+HTTPS support
+-------------
+
+Depending on the scheme of the request the variable wsgi.url_scheme will be set
+correctly on the request:
+
+ >>> browser.open('http://localhost/echo_one.html?var=wsgi.url_scheme')
+ >>> print browser.contents
+ 'http'
+
+ >>> browser.open('https://localhost/echo_one.html?var=wsgi.url_scheme')
+ >>> print browser.contents
+ 'https'
+
+see http://www.python.org/dev/peps/pep-3333/ for details.
Modified: zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/cookies.txt
===================================================================
--- zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/cookies.txt 2011-02-03 08:32:48 UTC (rev 120076)
+++ zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/cookies.txt 2011-02-03 09:21:35 UTC (rev 120077)
@@ -9,8 +9,12 @@
setting, and deleting the cookies that the browser is remembering for the
current url, or for an explicitly provided URL.
- >>> browser = Browser()
+ >>> from zope.testbrowser.ftests.wsgitestapp import WSGITestApplication
+ >>> from zope.testbrowser.wsgi import Browser
+ >>> wsgi_app = WSGITestApplication()
+ >>> browser = Browser(wsgi_app=wsgi_app)
+
Initially the browser does not point to a URL, and the cookies cannot be used.
>>> len(browser.cookies)
Modified: zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/fixed-bugs.txt
===================================================================
--- zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/fixed-bugs.txt 2011-02-03 08:32:48 UTC (rev 120076)
+++ zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/fixed-bugs.txt 2011-02-03 09:21:35 UTC (rev 120077)
@@ -5,6 +5,9 @@
This file includes tests for bugs that were found and then fixed that don't fit
into the more documentation-centric sections above.
+ >>> from zope.testbrowser.ftests.wsgitestapp import WSGITestApplication
+ >>> from zope.testbrowser.wsgi import Browser
+ >>> wsgi_app = WSGITestApplication()
Unicode URLs
============
@@ -24,11 +27,11 @@
The tests below failed before the change was put in place.
- >>> browser = Browser()
+ >>> browser = Browser(wsgi_app=wsgi_app)
>>> browser.addHeader('Cookie', 'test')
>>> browser.open(u'http://localhost/@@/testbrowser/simple.html')
- >>> browser = Browser()
+ >>> browser = Browser(wsgi_app=wsgi_app)
>>> browser.addHeader(u'Cookie', 'test')
>>> browser.open('http://localhost/@@/testbrowser/simple.html')
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 08:32:48 UTC (rev 120076)
+++ zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/tests/test_doctests.py 2011-02-03 09:21:35 UTC (rev 120077)
@@ -18,21 +18,14 @@
import zope.testbrowser.ftests.wsgitestapp
import zope.testbrowser.wsgi
-def make_browser(*args, **kw):
- assert 'wsgi_app' not in kw
- kw['wsgi_app'] = zope.testbrowser.ftests.wsgitestapp.WSGITestApplication()
- return zope.testbrowser.wsgi.Browser(*args, **kw)
-
def test_suite():
flags = doctest.NORMALIZE_WHITESPACE | doctest.ELLIPSIS
suite = doctest.DocFileSuite(
'README.txt',
'cookies.txt',
- 'wsgi.txt',
'fixed-bugs.txt',
optionflags=flags,
- globs=dict(Browser=make_browser),
checker=zope.testbrowser.tests.helper.checker,
package='zope.testbrowser')
Deleted: zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/wsgi.txt
===================================================================
--- zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/wsgi.txt 2011-02-03 08:32:48 UTC (rev 120076)
+++ zope.testbrowser/branches/jinty-webtest3/src/zope/testbrowser/wsgi.txt 2011-02-03 09:21:35 UTC (rev 120077)
@@ -1,20 +0,0 @@
-Detailed tests for WSGI Browser
-===============================
-
- >>> browser = Browser()
-
-HTTPS support
--------------
-
-Depending on the scheme of the request the variable wsgi.url_scheme will be set
-correctly on the request:
-
- >>> browser.open('http://localhost/echo_one.html?var=wsgi.url_scheme')
- >>> print browser.contents
- 'http'
-
- >>> browser.open('https://localhost/echo_one.html?var=wsgi.url_scheme')
- >>> print browser.contents
- 'https'
-
-see http://www.python.org/dev/peps/pep-3333/ for details.
More information about the checkins
mailing list