[Checkins] SVN: z3ext.statusmessage/trunk/ update tests
Nikolay Kim
fafhrd91 at gmail.com
Tue Dec 22 18:56:52 EST 2009
Log message for revision 106980:
update tests
Changed:
U z3ext.statusmessage/trunk/CHANGES.txt
U z3ext.statusmessage/trunk/setup.py
U z3ext.statusmessage/trunk/src/z3ext/statusmessage/README.txt
D z3ext.statusmessage/trunk/src/z3ext/statusmessage/message.pt
U z3ext.statusmessage/trunk/src/z3ext/statusmessage/message.py
U z3ext.statusmessage/trunk/src/z3ext/statusmessage/null.py
U z3ext.statusmessage/trunk/src/z3ext/statusmessage/styles.zcml
U z3ext.statusmessage/trunk/src/z3ext/statusmessage/tests/ftesting.zcml
U z3ext.statusmessage/trunk/src/z3ext/statusmessage/tests/tests.py
-=-
Modified: z3ext.statusmessage/trunk/CHANGES.txt
===================================================================
--- z3ext.statusmessage/trunk/CHANGES.txt 2009-12-22 23:56:42 UTC (rev 106979)
+++ z3ext.statusmessage/trunk/CHANGES.txt 2009-12-22 23:56:52 UTC (rev 106980)
@@ -2,10 +2,14 @@
CHANGES
=======
-1.4.1 (Unreleased)
+1.5.0 (Unreleased)
------------------
+- ZTK support
+- Handle only IBrowserRequests
+
+
1.4.0 (2009-08-11)
------------------
Modified: z3ext.statusmessage/trunk/setup.py
===================================================================
--- z3ext.statusmessage/trunk/setup.py 2009-12-22 23:56:42 UTC (rev 106979)
+++ z3ext.statusmessage/trunk/setup.py 2009-12-22 23:56:52 UTC (rev 106980)
@@ -21,7 +21,7 @@
def read(*rnames):
return open(os.path.join(os.path.dirname(__file__), *rnames)).read()
-version = '1.4.1dev'
+version = '0'
setup(name='z3ext.statusmessage',
@@ -47,7 +47,7 @@
'Framework :: Zope3'],
author='Nikolay Kim',
author_email='fafhrd91 at gmail.com',
- url='http://z3ext.net/',
+ url='http://pypi.python.org/pypi/z3ext.statusmessage/',
license='ZPL 2.1',
packages=find_packages('src'),
package_dir = {'':'src'},
@@ -58,15 +58,17 @@
'zope.session',
'zope.publisher',
'zope.contentprovider',
- 'zope.app.component',
- 'zope.app.publication',
'z3ext.cacheheaders',
],
extras_require = dict(test=['zope.app.testing',
'zope.testing',
'zope.testbrowser',
- 'zope.app.zcmlfiles',
+ 'zope.browserpage',
+ 'zope.browserresource',
+ 'zope.principalregistry',
+ 'zope.app.pagetemplate',
'zope.securitypolicy',
+ 'z3ext.autoinclude',
]),
include_package_data = True,
zip_safe = False
Modified: z3ext.statusmessage/trunk/src/z3ext/statusmessage/README.txt
===================================================================
--- z3ext.statusmessage/trunk/src/z3ext/statusmessage/README.txt 2009-12-22 23:56:42 UTC (rev 106979)
+++ z3ext.statusmessage/trunk/src/z3ext/statusmessage/README.txt 2009-12-22 23:56:52 UTC (rev 106980)
@@ -110,3 +110,33 @@
>>> bool(service)
False
+
+
+just tests
+
+ >>> sm = component.getSiteManager()
+
+ >>> class MessageWithError(message.Message):
+ ... def render(self, msg):
+ ... raise ValueError
+
+ >>> component.provideAdapter(MessageWithError, name='msgWithError')
+
+ >>> service.add('Test message', 'msgWithError')
+ >>> service.messages()
+ ()
+
+ >>> from zope.session.interfaces import ISession, ISessionDataContainer
+
+ >>> container = sm.getUtility(ISessionDataContainer)
+ >>> _t = sm.unregisterUtility(container, ISessionDataContainer)
+
+ >>> interfaces.IStatusMessage(request)
+ <z3ext.statusmessage.null.NullMessageService ...>
+
+ >>> from zope.publisher.interfaces.browser import IBrowserRequest
+ >>> from z3ext.statusmessage.tests.tests import getSession
+ >>> _t = sm.unregisterAdapter(getSession, (IBrowserRequest,), ISession)
+
+ >>> interfaces.IStatusMessage(request)
+ <z3ext.statusmessage.null.NullMessageService ...>
Deleted: z3ext.statusmessage/trunk/src/z3ext/statusmessage/message.pt
===================================================================
--- z3ext.statusmessage/trunk/src/z3ext/statusmessage/message.pt 2009-12-22 23:56:42 UTC (rev 106979)
+++ z3ext.statusmessage/trunk/src/z3ext/statusmessage/message.pt 2009-12-22 23:56:52 UTC (rev 106980)
@@ -1 +0,0 @@
-<div tal:attributes="class view/cssClass" tal:content="options/message"></div>
\ No newline at end of file
Modified: z3ext.statusmessage/trunk/src/z3ext/statusmessage/message.py
===================================================================
--- z3ext.statusmessage/trunk/src/z3ext/statusmessage/message.py 2009-12-22 23:56:42 UTC (rev 106979)
+++ z3ext.statusmessage/trunk/src/z3ext/statusmessage/message.py 2009-12-22 23:56:52 UTC (rev 106980)
@@ -17,7 +17,7 @@
"""
import cgi
from zope import interface, component
-from zope.app.pagetemplate import ViewPageTemplateFile
+from zope.i18n import translate
from zope.contentprovider.interfaces import IContentProvider
from zope.publisher.interfaces.browser import IBrowserRequest
@@ -35,14 +35,11 @@
class InformationMessage(Message):
cssClass = 'statusMessage'
- index = ViewPageTemplateFile('message.pt')
- @property
- def context(self):
- return self
-
def render(self, message):
- return self.index(message=message)
+ return '<div class="%s">%s</div>'%(
+ self.cssClass,
+ cgi.escape(translate(message, context=self.request), True))
class WarningMessage(InformationMessage):
@@ -65,8 +62,7 @@
class StatusMessage(object):
interface.implements(IContentProvider)
- component.adapts(
- interface.Interface, IBrowserRequest, interface.Interface)
+ component.adapts(interface.Interface, IBrowserRequest, interface.Interface)
def __init__(self, context, request, view):
self.context, self.request, self.view = context, request, view
Modified: z3ext.statusmessage/trunk/src/z3ext/statusmessage/null.py
===================================================================
--- z3ext.statusmessage/trunk/src/z3ext/statusmessage/null.py 2009-12-22 23:56:42 UTC (rev 106979)
+++ z3ext.statusmessage/trunk/src/z3ext/statusmessage/null.py 2009-12-22 23:56:52 UTC (rev 106980)
@@ -21,6 +21,35 @@
class NullMessageService(object):
+ """
+ >>> from zope.interface.verify import verifyClass
+
+ >>> verifyClass(IStatusMessage, NullMessageService)
+ True
+
+ >>> from zope.publisher.browser import TestRequest
+ >>> from z3ext.statusmessage import message
+
+ >>> service = NullMessageService(TestRequest())
+ >>> component.provideAdapter(message.InformationMessage, name='info')
+
+ >>> service.add('Test message')
+
+ >>> bool(service)
+ True
+
+ >>> for msg in service.messages():
+ ... print msg
+ <div class="statusMessage">Test message</div>
+
+ >>> for msg in service.clear():
+ ... print msg
+ <div class="statusMessage">Test message</div>
+
+ >>> bool(service)
+ False
+
+ """
interface.implements(IStatusMessage)
def __init__(self, request):
@@ -32,8 +61,11 @@
self._messages.append(message.render(text))
def clear(self):
+ messages = self._messages
self._messages = []
+ return messages
+
def messages(self):
return tuple(self._messages)
Modified: z3ext.statusmessage/trunk/src/z3ext/statusmessage/styles.zcml
===================================================================
--- z3ext.statusmessage/trunk/src/z3ext/statusmessage/styles.zcml 2009-12-22 23:56:42 UTC (rev 106979)
+++ z3ext.statusmessage/trunk/src/z3ext/statusmessage/styles.zcml 2009-12-22 23:56:52 UTC (rev 106980)
@@ -2,12 +2,11 @@
xmlns="http://namespaces.zope.org/zope"
xmlns:zcml="http://namespaces.zope.org/zcml"
xmlns:z3ext="http://namespaces.zope.org/z3ext"
+ xmlns:browser="http://namespaces.zope.org/browser"
zcml:condition="installed z3ext.resourcepackage">
<include package="z3ext.resourcepackage" file="meta.zcml" />
- <include package="z3ext.resource" file="meta.zcml" />
<include package="z3ext.resourcepackage" />
- <include package="z3ext.resource" />
<!-- styles -->
<z3ext:resourceinclude
@@ -17,16 +16,17 @@
file="styles.css" filetype="zrt" />
<!-- icons -->
- <z3ext:resource
+ <browser:resource
file="status-information.png"
name="statusmessage-information.png" />
- <z3ext:resource
+ <browser:resource
file="status-warning.png"
name="statusmessage-warning.png" />
- <z3ext:resource
+ <browser:resource
file="status-error.png"
name="statusmessage-error.png" />
</configure>
+
Modified: z3ext.statusmessage/trunk/src/z3ext/statusmessage/tests/ftesting.zcml
===================================================================
--- z3ext.statusmessage/trunk/src/z3ext/statusmessage/tests/ftesting.zcml 2009-12-22 23:56:42 UTC (rev 106979)
+++ z3ext.statusmessage/trunk/src/z3ext/statusmessage/tests/ftesting.zcml 2009-12-22 23:56:52 UTC (rev 106980)
@@ -3,25 +3,11 @@
xmlns:browser="http://namespaces.zope.org/browser"
i18n_domain="zope">
- <!-- This file is the equivalent of site.zcml and it is -->
- <!-- used for functional testing setup -->
+ <exclude package="zope.dublincore.browser" />
- <include package="zope.component" file="meta.zcml" />
- <include package="zope.securitypolicy" file="meta.zcml" />
- <include package="zope.app.component" file="meta.zcml" />
- <include package="zope.app.security" file="meta.zcml" />
- <include package="zope.app.pagetemplate" file="meta.zcml" />
+ <include package="z3ext.autoinclude" file="meta.zcml" />
+ <includeAllDependencies package="z3ext.statusmessage" extras="test" />
- <include package="zope.securitypolicy" />
- <include package="zope.contentprovider" />
- <include package="zope.app.security" />
- <include package="zope.app.zcmlfiles" />
- <include package="zope.app.authentication" />
- <include package="zope.session" />
-
- <include package="z3ext.cacheheaders" />
- <include package="z3ext.statusmessage" />
-
<browser:page
for="*"
name="test.html"
Modified: z3ext.statusmessage/trunk/src/z3ext/statusmessage/tests/tests.py
===================================================================
--- z3ext.statusmessage/trunk/src/z3ext/statusmessage/tests/tests.py 2009-12-22 23:56:42 UTC (rev 106979)
+++ z3ext.statusmessage/trunk/src/z3ext/statusmessage/tests/tests.py 2009-12-22 23:56:52 UTC (rev 106980)
@@ -19,12 +19,11 @@
from zope.app.testing import setup
from zope import interface, component
-from zope.component import provideAdapter
+from zope.component import testing, provideAdapter
from zope.session.interfaces import ISession, ISessionDataContainer
from zope.session.session import RAMSessionDataContainer
from zope.publisher.interfaces.browser import IBrowserRequest
-from zope.app.testing.functional import ZCMLLayer
-from zope.app.testing.functional import FunctionalDocFileSuite
+from zope.app.testing.functional import ZCMLLayer, FunctionalDocFileSuite
from zope.traversing.testing import setUp as setUpTraversing
from z3ext.statusmessage import message
@@ -51,7 +50,7 @@
def setUp(test):
- setup.placelessSetUp()
+ testing.setUp()
setUpTraversing()
component.provideAdapter(getSession)
component.provideAdapter(message.StatusMessage, name='statusMessage')
@@ -60,7 +59,7 @@
def tearDown(test):
session.__init__()
- setup.placelessTearDown()
+ testing.tearDown()
def test_suite():
@@ -75,4 +74,8 @@
'../README.txt',
setUp=setUp, tearDown=tearDown,
optionflags=doctest.NORMALIZE_WHITESPACE|doctest.ELLIPSIS),
+ doctest.DocTestSuite(
+ 'z3ext.statusmessage.null',
+ setUp=setUp, tearDown=tearDown,
+ optionflags=doctest.NORMALIZE_WHITESPACE|doctest.ELLIPSIS),
))
More information about the checkins
mailing list