[Checkins] SVN: megrok.login/trunk/ use groktoolkit trunk versions, port to zope.testbrowser, remove z3c.testsetup dependency
Jan-Wijbrand Kolman
janwijbrand at gmail.com
Wed May 25 10:25:00 EDT 2011
Log message for revision 121799:
use groktoolkit trunk versions, port to zope.testbrowser, remove z3c.testsetup dependency
Changed:
U megrok.login/trunk/buildout.cfg
U megrok.login/trunk/setup.py
U megrok.login/trunk/src/megrok/login/tests/__init__.py
U megrok.login/trunk/src/megrok/login/tests/autoregister.py
U megrok.login/trunk/src/megrok/login/tests/customlogin.py
U megrok.login/trunk/src/megrok/login/tests/custompausetup.py
U megrok.login/trunk/src/megrok/login/tests/simple.py
U megrok.login/trunk/src/megrok/login/tests/strict.py
U megrok.login/trunk/src/megrok/login/tests/test_login.py
U megrok.login/trunk/src/megrok/login/tests/unset.py
-=-
Modified: megrok.login/trunk/buildout.cfg
===================================================================
--- megrok.login/trunk/buildout.cfg 2011-05-25 13:01:57 UTC (rev 121798)
+++ megrok.login/trunk/buildout.cfg 2011-05-25 14:25:00 UTC (rev 121799)
@@ -1,8 +1,7 @@
[buildout]
-extends = http://grok.zope.org/releaseinfo/1.3/versions.cfg
-develop = .
+extends = http://svn.zope.org/repos/main/groktoolkit/trunk/grok.cfg
+develop = .
parts = test
-#find-links = http://download.zope.org/distribution/
extensions = buildout.dumppickedversions
versions = versions
Modified: megrok.login/trunk/setup.py
===================================================================
--- megrok.login/trunk/setup.py 2011-05-25 13:01:57 UTC (rev 121798)
+++ megrok.login/trunk/setup.py 2011-05-25 14:25:00 UTC (rev 121799)
@@ -5,10 +5,11 @@
return open(os.path.join(os.path.dirname(__file__), *rnames)).read()
tests_require = [
+ 'z3c.testsetup',
+ 'zope.app.wsgi',
+ 'zope.app.appsetup',
+ 'zope.testbrowser',
'zope.testing',
- 'zope.app.testing',
- 'zope.testbrowser',
- 'z3c.testsetup',
]
long_description = (
@@ -35,30 +36,31 @@
long_description=long_description,
license='ZPL 2.1',
keywords="zope3 zope login grok security PAU",
- classifiers=['Development Status :: 3 - Alpha',
- 'Environment :: Web Environment',
- 'Intended Audience :: Developers',
- 'License :: OSI Approved :: Zope Public License',
- 'Programming Language :: Python',
- 'Operating System :: OS Independent',
- 'Framework :: Zope3',
- ],
-
+ classifiers=[
+ 'Development Status :: 3 - Alpha',
+ 'Environment :: Web Environment',
+ 'Intended Audience :: Developers',
+ 'License :: OSI Approved :: Zope Public License',
+ 'Programming Language :: Python',
+ 'Operating System :: OS Independent',
+ 'Framework :: Zope3',
+ ],
packages=find_packages('src'),
package_dir = {'': 'src'},
namespace_packages = ['megrok'],
include_package_data = True,
zip_safe=False,
- install_requires=['setuptools',
- 'grok',
- 'martian',
- 'zope.authentication',
- 'zope.container',
- 'zope.component',
- 'zope.interface',
- 'zope.pluggableauth',
- 'zope.securitypolicy',
- ],
+ install_requires=[
+ 'grok',
+ 'martian',
+ 'setuptools',
+ 'zope.authentication',
+ 'zope.component',
+ 'zope.container',
+ 'zope.interface',
+ 'zope.pluggableauth',
+ 'zope.securitypolicy',
+ ],
tests_require = tests_require,
extras_require = dict(test=tests_require),
-)
+ )
Modified: megrok.login/trunk/src/megrok/login/tests/__init__.py
===================================================================
--- megrok.login/trunk/src/megrok/login/tests/__init__.py 2011-05-25 13:01:57 UTC (rev 121798)
+++ megrok.login/trunk/src/megrok/login/tests/__init__.py 2011-05-25 14:25:00 UTC (rev 121799)
@@ -1,8 +0,0 @@
-import os.path
-import megrok.login
-from zope.app.testing.functional import ZCMLLayer
-
-ftesting_zcml = os.path.abspath(os.path.join(os.path.dirname(
- megrok.login.__file__), 'ftesting.zcml'))
-FunctionalLayer = ZCMLLayer(ftesting_zcml, __name__, 'FunctionalLayer',
- allow_teardown=True)
Modified: megrok.login/trunk/src/megrok/login/tests/autoregister.py
===================================================================
--- megrok.login/trunk/src/megrok/login/tests/autoregister.py 2011-05-25 13:01:57 UTC (rev 121798)
+++ megrok.login/trunk/src/megrok/login/tests/autoregister.py 2011-05-25 14:25:00 UTC (rev 121799)
@@ -22,8 +22,8 @@
Now, when we try to access the `index` view of the app, we'll get a
login page::
-
- >>> from zope.testbrowser.testing import Browser
+
+ >>> from zope.testbrowser.wsgi import Browser
>>> browser = Browser()
>>> browser.open('http://localhost/app')
>>> print browser.contents
@@ -33,7 +33,7 @@
...
We enter the credentials::
-
+
>>> browser.getControl('User Name').value = 'bob'
>>> browser.getControl('Password').value = 'bobspw'
>>> browser.getControl('Log in').click()
@@ -80,7 +80,7 @@
>>> print browser.contents
Hi autoregistered user!
-
+
"""
import grok
import megrok.login
@@ -104,7 +104,7 @@
class Logout(grok.View):
"""A logout screen.
"""
-
+
def render(self):
# The session plugin which is automatically created, is always
# called 'session'
Modified: megrok.login/trunk/src/megrok/login/tests/customlogin.py
===================================================================
--- megrok.login/trunk/src/megrok/login/tests/customlogin.py 2011-05-25 13:01:57 UTC (rev 121798)
+++ megrok.login/trunk/src/megrok/login/tests/customlogin.py 2011-05-25 14:25:00 UTC (rev 121799)
@@ -21,8 +21,8 @@
Now, when we try to access the `index` view of the app, we'll get a
login page::
-
- >>> from zope.testbrowser.testing import Browser
+
+ >>> from zope.testbrowser.wsgi import Browser
>>> browser = Browser()
>>> browser.open('http://localhost/app')
>>> print browser.contents
@@ -32,7 +32,7 @@
...
We enter the credentials::
-
+
>>> browser.getControl(name='login').value = 'mgr'
>>> browser.getControl(name='password').value = 'mgrpw'
>>> browser.getControl('Log in').click()
@@ -42,10 +42,10 @@
>>> print browser.contents
Hi after custom login!
-
+
Login view fields
-----------------
-
+
For the authentication it is essential, that your login form provides:
* a field named `login` with the username (principal title)
Modified: megrok.login/trunk/src/megrok/login/tests/custompausetup.py
===================================================================
--- megrok.login/trunk/src/megrok/login/tests/custompausetup.py 2011-05-25 13:01:57 UTC (rev 121798)
+++ megrok.login/trunk/src/megrok/login/tests/custompausetup.py 2011-05-25 14:25:00 UTC (rev 121799)
@@ -42,7 +42,7 @@
The installed setup is active. We can login via a login screen::
- >>> from zope.testbrowser.testing import Browser
+ >>> from zope.testbrowser.wsgi import Browser
>>> browser = Browser()
>>> browser.open('http://localhost/app')
>>> print browser.contents
@@ -52,7 +52,7 @@
...
We enter the credentials::
-
+
>>> browser.getControl('User Name').value = 'mgr'
>>> browser.getControl('Password').value = 'mgrpw'
>>> browser.getControl('Log in').click()
@@ -110,7 +110,7 @@
session.loginpagename = viewname
return
-
+
class ManageCustomSetupApp(grok.Permission):
grok.name('app.manageCustomSetupApp')
Modified: megrok.login/trunk/src/megrok/login/tests/simple.py
===================================================================
--- megrok.login/trunk/src/megrok/login/tests/simple.py 2011-05-25 13:01:57 UTC (rev 121798)
+++ megrok.login/trunk/src/megrok/login/tests/simple.py 2011-05-25 14:25:00 UTC (rev 121799)
@@ -15,8 +15,8 @@
Now, when we try to access the `index` view of the app, we'll get a
login page::
-
- >>> from zope.testbrowser.testing import Browser
+
+ >>> from zope.testbrowser.wsgi import Browser
>>> browser = Browser()
>>> browser.open('http://localhost/simpleapp')
>>> print browser.contents
@@ -26,7 +26,7 @@
...
We enter the credentials::
-
+
>>> browser.getControl('User Name').value = 'mgr'
>>> browser.getControl('Password').value = 'mgrpw'
>>> browser.getControl('Log in').click()
Modified: megrok.login/trunk/src/megrok/login/tests/strict.py
===================================================================
--- megrok.login/trunk/src/megrok/login/tests/strict.py 2011-05-25 13:01:57 UTC (rev 121798)
+++ megrok.login/trunk/src/megrok/login/tests/strict.py 2011-05-25 14:25:00 UTC (rev 121799)
@@ -36,8 +36,8 @@
Now, when we try to access the `index` view of the app, we'll get a
login page::
-
- >>> from zope.testbrowser.testing import Browser
+
+ >>> from zope.testbrowser.wsgi import Browser
>>> browser = Browser()
>>> browser.open('http://localhost/app')
>>> print browser.contents
@@ -48,7 +48,7 @@
When we enter the normal manager credentials, this will not let us
in. Instead we will again see the login page::
-
+
>>> browser.getControl('User Name').value = 'mgr'
>>> browser.getControl('Password').value = 'mgrpw'
>>> browser.getControl('Log in').click()
Modified: megrok.login/trunk/src/megrok/login/tests/test_login.py
===================================================================
--- megrok.login/trunk/src/megrok/login/tests/test_login.py 2011-05-25 13:01:57 UTC (rev 121798)
+++ megrok.login/trunk/src/megrok/login/tests/test_login.py 2011-05-25 14:25:00 UTC (rev 121799)
@@ -1,10 +1,13 @@
+import doctest
+import megrok.login
import re
+import unittest
from zope.testing import module, renormalizing
-from zope.app.testing.functional import FunctionalTestSetup
-from z3c.testsetup import register_all_tests
-from megrok.login.tests import FunctionalLayer
+from zope.app.wsgi.testlayer import BrowserLayer
-checker = renormalizing.RENormalizing([
+_layer = BrowserLayer(megrok.login, zcml_file='ftesting.zcml')
+
+_checker = renormalizing.RENormalizing([
# Relevant normalizers from zope.testing.testrunner.tests:
(re.compile(r'\d+[.]\d\d\d seconds'), 'N.NNN seconds'),
# Our own one to work around
@@ -13,19 +16,40 @@
(re.compile(r'httperror_seek_wrapper:'), 'HTTPError:' )
])
+_option_flags = (
+ doctest.ELLIPSIS +
+ doctest.NORMALIZE_WHITESPACE +
+ doctest.REPORT_NDIFF)
+
+'''
def setUp(test):
if test.filename.endswith('.txt'):
module.setUp(test, '__main__')
FunctionalTestSetup().setUp()
-
+
def tearDown(test):
FunctionalTestSetup().tearDown()
if test.filename.endswith('.txt'):
module.tearDown(test)
+'''
-test_suite = register_all_tests('megrok.login', layer=FunctionalLayer,
- fextensions=['.txt', '.py'],
- fsetup=setUp,
- fteardown=tearDown,
- checker=checker,
- )
+def test_suite():
+ suite = unittest.TestSuite()
+ for name in [
+ 'megrok.login.tests.autoregister',
+ 'megrok.login.tests.customlogin',
+ 'megrok.login.tests.custompausetup',
+ 'megrok.login.tests.simple',
+ 'megrok.login.tests.strict',
+ 'megrok.login.tests.unset',
+ ]:
+ _globs = {'getRootFolder': _layer.getRootFolder}
+ test = doctest.DocTestSuite(
+ name,
+ checker=_checker,
+ globs=_globs,
+ optionflags=_option_flags,
+ )
+ test.layer = _layer
+ suite.addTest(test)
+ return suite
Modified: megrok.login/trunk/src/megrok/login/tests/unset.py
===================================================================
--- megrok.login/trunk/src/megrok/login/tests/unset.py 2011-05-25 13:01:57 UTC (rev 121798)
+++ megrok.login/trunk/src/megrok/login/tests/unset.py 2011-05-25 14:25:00 UTC (rev 121799)
@@ -12,7 +12,7 @@
>>> root = getRootFolder()
>>> root['app'] = App()
- >>> from zope.testbrowser.testing import Browser
+ >>> from zope.testbrowser.wsgi import Browser
>>> browser = Browser()
>>> browser.open('http://localhost/app')
Traceback (most recent call last):
@@ -25,8 +25,8 @@
>>> browser.open('http://localhost/app')
>>> browser.headers['status']
'200 Ok'
-
+
"""
import grok
More information about the checkins
mailing list