[Checkins] SVN: Sandbox/ulif/grokadmin/trunk/src/grokadmin/ Add
unittests for grokadmin.
Uli Fouquet
uli at gnufix.de
Sun Oct 7 07:27:48 EDT 2007
Log message for revision 80693:
Add unittests for grokadmin.
Changed:
U Sandbox/ulif/grokadmin/trunk/src/grokadmin/app.py
A Sandbox/ulif/grokadmin/trunk/src/grokadmin/tests/
A Sandbox/ulif/grokadmin/trunk/src/grokadmin/tests/__init__.py
A Sandbox/ulif/grokadmin/trunk/src/grokadmin/tests/test_grokadmin.py
-=-
Modified: Sandbox/ulif/grokadmin/trunk/src/grokadmin/app.py
===================================================================
--- Sandbox/ulif/grokadmin/trunk/src/grokadmin/app.py 2007-10-07 10:59:05 UTC (rev 80692)
+++ Sandbox/ulif/grokadmin/trunk/src/grokadmin/app.py 2007-10-07 11:27:48 UTC (rev 80693)
@@ -17,4 +17,12 @@
class GrokAdmin(grok.Application, grok.Container):
"""The Grok Administrators and Developers UI.
+
+ We can create a ``GrokAdmin`` application::
+
+ >>> from grokadmin.app import GrokAdmin
+ >>> admin = GrokAdmin()
+ >>> admin
+ <grokadmin.app.GrokAdmin object at 0x...>
+
"""
Added: Sandbox/ulif/grokadmin/trunk/src/grokadmin/tests/__init__.py
===================================================================
--- Sandbox/ulif/grokadmin/trunk/src/grokadmin/tests/__init__.py (rev 0)
+++ Sandbox/ulif/grokadmin/trunk/src/grokadmin/tests/__init__.py 2007-10-07 11:27:48 UTC (rev 80693)
@@ -0,0 +1,14 @@
+##############################################################################
+#
+# Copyright (c) 2007 Zope Corporation and Contributors.
+# All Rights Reserved.
+#
+# This software is subject to the provisions of the Zope Public License,
+# Version 2.1 (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.
+#
+##############################################################################
+# this is a package
Added: Sandbox/ulif/grokadmin/trunk/src/grokadmin/tests/test_grokadmin.py
===================================================================
--- Sandbox/ulif/grokadmin/trunk/src/grokadmin/tests/test_grokadmin.py (rev 0)
+++ Sandbox/ulif/grokadmin/trunk/src/grokadmin/tests/test_grokadmin.py 2007-10-07 11:27:48 UTC (rev 80693)
@@ -0,0 +1,75 @@
+##############################################################################
+#
+# Copyright (c) 2007 Zope Corporation and Contributors.
+# All Rights Reserved.
+#
+# This software is subject to the provisions of the Zope Public License,
+# Version 2.1 (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.
+#
+##############################################################################
+"""Setup for tests."""
+
+import os
+import unittest
+from pkg_resources import resource_listdir
+from zope.testing import doctest, cleanup
+import zope.component.eventtesting
+from zope.annotation.attribute import AttributeAnnotations
+
+def setUpZope(test):
+ zope.component.eventtesting.setUp(test)
+ zope.component.provideAdapter(AttributeAnnotations)
+
+def cleanUpZope(test):
+ cleanup.cleanUp()
+
+def suiteFromPackage(name):
+ files = resource_listdir(__name__, name)
+ suite = unittest.TestSuite()
+ for filename in files:
+ if not filename.endswith('.py'):
+ continue
+ if filename.endswith('_fixture.py'):
+ continue
+ if filename == '__init__.py':
+ continue
+
+ dottedname = 'grokadmin.tests.%s.%s' % (name, filename[:-3])
+ test = doctest.DocTestSuite(dottedname,
+ setUp=setUpZope,
+ tearDown=cleanUpZope,
+ optionflags=doctest.ELLIPSIS+
+ doctest.NORMALIZE_WHITESPACE)
+
+ suite.addTest(test)
+ return suite
+
+def pnorm(path):
+ """Normalization of paths to use forward slashes. This is needed
+ to make sure the tests work on windows.
+ """
+ return path.replace(os.sep, '/')
+
+def test_suite():
+ suite = unittest.TestSuite()
+ globs = {'pnorm': pnorm}
+
+ for name in []:
+ suite.addTest(suiteFromPackage(name))
+ for name in ['app.py']:
+ suite.addTest(doctest.DocFileSuite(name,
+ package='grokadmin',
+ globs=globs,
+ setUp=setUpZope,
+ tearDown=cleanUpZope,
+ optionflags=doctest.ELLIPSIS+
+ doctest.NORMALIZE_WHITESPACE)
+ )
+ return suite
+
+if __name__ == '__main__':
+ unittest.main(defaultTest='test_suite')
More information about the Checkins
mailing list