[Checkins] SVN: z3ext.statusmessage/tags/1.3.0/ release tag

Nikolay Kim fafhrd at datacom.kz
Thu Nov 20 11:17:54 EST 2008


Log message for revision 93179:
  release tag

Changed:
  A   z3ext.statusmessage/tags/1.3.0/
  U   z3ext.statusmessage/tags/1.3.0/CHANGES.txt
  D   z3ext.statusmessage/tags/1.3.0/setup.py
  A   z3ext.statusmessage/tags/1.3.0/setup.py
  D   z3ext.statusmessage/tags/1.3.0/src/z3ext/statusmessage/README.txt
  A   z3ext.statusmessage/tags/1.3.0/src/z3ext/statusmessage/README.txt
  D   z3ext.statusmessage/tags/1.3.0/src/z3ext/statusmessage/interfaces.py
  A   z3ext.statusmessage/tags/1.3.0/src/z3ext/statusmessage/interfaces.py
  D   z3ext.statusmessage/tags/1.3.0/src/z3ext/statusmessage/session.py
  A   z3ext.statusmessage/tags/1.3.0/src/z3ext/statusmessage/session.py
  A   z3ext.statusmessage/tags/1.3.0/src/z3ext/statusmessage/tests/
  D   z3ext.statusmessage/tags/1.3.0/src/z3ext/statusmessage/tests.py

-=-
Modified: z3ext.statusmessage/tags/1.3.0/CHANGES.txt
===================================================================
--- z3ext.statusmessage/trunk/CHANGES.txt	2008-11-20 12:39:07 UTC (rev 93154)
+++ z3ext.statusmessage/tags/1.3.0/CHANGES.txt	2008-11-20 16:17:54 UTC (rev 93179)
@@ -2,7 +2,7 @@
 CHANGES
 =======
 
-1.3.0 (2008-11-??)
+1.3.0 (2008-11-20)
 ------------------
 
 - API refactored

Deleted: z3ext.statusmessage/tags/1.3.0/setup.py
===================================================================
--- z3ext.statusmessage/trunk/setup.py	2008-11-20 12:39:07 UTC (rev 93154)
+++ z3ext.statusmessage/tags/1.3.0/setup.py	2008-11-20 16:17:54 UTC (rev 93179)
@@ -1,70 +0,0 @@
-##############################################################################
-#
-# 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 z3ext.statusmessage package
-
-$Id$
-"""
-import sys, os
-from setuptools import setup, find_packages
-
-def read(*rnames):
-    return open(os.path.join(os.path.dirname(__file__), *rnames)).read()
-
-version = '1.2.2dev'
-
-
-setup(name='z3ext.statusmessage',
-      version=version,
-      description="Status messages",
-      long_description=(
-          'Detailed Dcoumentation\n' +
-          '======================\n'
-          + '\n\n' +
-          read('src', 'z3ext', 'statusmessage', 'README.txt')
-          + '\n\n' +
-          read('CHANGES.txt')
-          ),
-      classifiers=[
-        'Development Status :: 5 - Production/Stable',
-        'Environment :: Web Environment',
-        'Intended Audience :: Developers',
-        'License :: OSI Approved :: Zope Public License',
-        'Programming Language :: Python',
-        'Natural Language :: English',
-        'Operating System :: OS Independent',
-        'Topic :: Internet :: WWW/HTTP',
-        'Framework :: Zope3'],
-      author='Nikolay Kim',
-      author_email='fafhrd91 at gmail.com',
-      url='http://z3ext.net/',
-      license='ZPL 2.1',
-      packages=find_packages('src'),
-      package_dir = {'':'src'},
-      namespace_packages=['z3ext'],
-      install_requires = ['setuptools',
-                          'zope.component',
-                          'zope.interface',
-                          'zope.session',
-			  'zope.publisher',
-                          'zope.contentprovider',
-			  'zope.app.component',
-			  'zope.app.publication',
-			  'z3c.autoinclude',
-                          ],
-      extras_require = dict(test=['zope.app.testing',
-                                  'zope.testing',
-                                  ]),
-      include_package_data = True,
-      zip_safe = False
-      )

Copied: z3ext.statusmessage/tags/1.3.0/setup.py (from rev 93178, z3ext.statusmessage/trunk/setup.py)
===================================================================
--- z3ext.statusmessage/tags/1.3.0/setup.py	                        (rev 0)
+++ z3ext.statusmessage/tags/1.3.0/setup.py	2008-11-20 16:17:54 UTC (rev 93179)
@@ -0,0 +1,73 @@
+##############################################################################
+#
+# 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 z3ext.statusmessage package
+
+$Id$
+"""
+import sys, os
+from setuptools import setup, find_packages
+
+def read(*rnames):
+    return open(os.path.join(os.path.dirname(__file__), *rnames)).read()
+
+version = '1.3.0'
+
+
+setup(name='z3ext.statusmessage',
+      version=version,
+      description="Status messages",
+      long_description=(
+          'Detailed Dcoumentation\n' +
+          '======================\n'
+          + '\n\n' +
+          read('src', 'z3ext', 'statusmessage', 'README.txt')
+          + '\n\n' +
+          read('CHANGES.txt')
+          ),
+      classifiers=[
+        'Development Status :: 5 - Production/Stable',
+        'Environment :: Web Environment',
+        'Intended Audience :: Developers',
+        'License :: OSI Approved :: Zope Public License',
+        'Programming Language :: Python',
+        'Natural Language :: English',
+        'Operating System :: OS Independent',
+        'Topic :: Internet :: WWW/HTTP',
+        'Framework :: Zope3'],
+      author='Nikolay Kim',
+      author_email='fafhrd91 at gmail.com',
+      url='http://z3ext.net/',
+      license='ZPL 2.1',
+      packages=find_packages('src'),
+      package_dir = {'':'src'},
+      namespace_packages=['z3ext'],
+      install_requires = ['setuptools',
+                          'zope.component',
+                          'zope.interface',
+                          'zope.session',
+			  'zope.publisher',
+                          'zope.contentprovider',
+			  'zope.app.component',
+			  'zope.app.publication',
+			  'z3c.autoinclude',
+                          ],
+      extras_require = dict(test=['zope.app.testing',
+                                  'zope.testing',
+				  'zope.testbrowser',
+                                  'zope.app.zcmlfiles',
+                                  'zope.securitypolicy',
+                                  ]),
+      include_package_data = True,
+      zip_safe = False
+      )

Deleted: z3ext.statusmessage/tags/1.3.0/src/z3ext/statusmessage/README.txt
===================================================================
--- z3ext.statusmessage/trunk/src/z3ext/statusmessage/README.txt	2008-11-20 12:39:07 UTC (rev 93154)
+++ z3ext.statusmessage/tags/1.3.0/src/z3ext/statusmessage/README.txt	2008-11-20 16:17:54 UTC (rev 93179)
@@ -1,162 +0,0 @@
-=====================
-Portal status message
-=====================
-
-Instead include notification messages directly to template,
- developer can use messaging service.
-
-Main interface is IStatusMessage, it is adapter for IBrowserRequest
-so we can have different implementations, for example cookie based or session.
-
-By default only session based service implemented.
-
-   >>> from zope import interface, component
-   >>> from zope.interface.verify import verifyClass
-
-   >>> from z3ext.statusmessage import tests
-   >>> from z3ext.statusmessage import interfaces, session, message, browser
-
-   >>> verifyClass(interfaces.IStatusMessage, session.SessionMessageService)
-   True
-
-   >>> component.provideAdapter(session.getSessionMessageService)
-
-   >>> from zope.publisher.browser import TestRequest
-   >>> request = TestRequest()
-
-   >>> service = interfaces.IStatusMessage(request)
-
-   >>> service.hasMessages()
-   False
-
-   >>> service.add('Test message')
-   Traceback (most recent call last):
-   ...
-   ComponentLookupError: ...
-
-   >>> service.clear()
-   ()
-
-
-Before we can use message service we need register message type.
-
-   >>> verifyClass(interfaces.IMessage, message.InformationMessage)
-   True
-
-   >>> component.provideUtility(message.InformationMessage, 
-   ...   interfaces.IMessageFactory, 'info')
-
-Now we can add messages.
-
-   >>> service.add('Test message')
-
-   >>> service.hasMessages()
-   True
-
-   >>> service.list()
-   [<z3ext.statusmessage.message.InformationMessage ...>]
-
-
-Let's register another message type.
-
-   >>> verifyClass(interfaces.IMessage, message.WarningMessage)
-   True
-
-   >>> component.provideUtility(message.WarningMessage, 
-   ...   interfaces.IMessageFactory, 'warning')
-
-   >>> service.add('Warning message', 'warning')
-
-   >>> service.list()
-   [<...InformationMessage ...>, <...WarningMessage ...>]
-
-Also we can add message directly
-
-   >>> verifyClass(interfaces.IMessage, message.ErrorMessage)
-   True
-
-Error message, we can add exception object
-
-   >>> service.addMessage(message.ErrorMessage(Exception('Error message')))
-
-or text message
-
-   >>> service.addMessage(message.ErrorMessage('Error message'))
-
-   >>> service.list()
-   [<...InformationMessage ...>, <...WarningMessage ...>, <...ErrorMessage ...>, <...ErrorMessage ...>]
-
-
-Message renderes
-----------------
-
-We should provider IMesasgeView adater for each message type.
-
-   >>> msg = service.list()[0]
-   >>> renderer = component.getMultiAdapter((msg, request), interfaces.IMessageView)
-   >>> renderer.render()
-   '<div class="statusMessage">Test message</div>'
-
-Same for other mesages
-
-   >>> msg = service.list()[1]
-   >>> renderer = component.getMultiAdapter((msg, request), interfaces.IMessageView)
-   >>> renderer.render()
-   '<div class="statusWarningMessage">Warning message</div>'
-
-   >>> msg = service.list()[2]
-   >>> renderer = component.getMultiAdapter((msg, request), interfaces.IMessageView)
-   >>> renderer.render()
-   '<div class="statusStopMessage">Exception: Error message</div>'
-
-To render all messages, we can use 'statusMessage' content provider.
-Also 'statusMessage' provider clears service
-
-   >>> from zope.contentprovider.interfaces import IContentProvider
-   >>> renderer = component.getMultiAdapter(
-   ...     (None, request, None), IContentProvider, 'statusMessage')
-   >>> renderer.update()
-   >>> print renderer.render()
-   <div class="statusMessage">Test message</div>
-   <div class="statusWarningMessage">Warning message</div>
-   <div class="statusStopMessage">Exception: Error message</div>
-   <div class="statusStopMessage">Error message</div>
-
-   >>> service.hasMessages()
-   False
-
-It is possible to add new messages to service with 'statusMessages' provider
-
-   >>> renderer.add('Test message')
-   >>> service.list()
-   [<...InformationMessage ...>]
-
-With different type:
-
-   >>> renderer.add('Warning message', 'warning')
-   >>> service.list()
-   [<...InformationMessage ...>, <...WarningMessage ...>]
-
-   >>> renderer.addIf('')
-   >>> len(service.list())
-   2
-
-   >>> renderer.addIf('test')
-   >>> len(service.list())
-   3
-
-   >>> t = service.clear()
-
-
-Clearing service
-----------------
-
-clear() method return all messages and clear service.
-
-   >>> service.addMessage(message.ErrorMessage('Error message'))
-
-   >>> service.clear()
-   [<...ErrorMessage ...>]
-
-   >>> service.hasMessages()
-   False

Copied: z3ext.statusmessage/tags/1.3.0/src/z3ext/statusmessage/README.txt (from rev 93178, z3ext.statusmessage/trunk/src/z3ext/statusmessage/README.txt)
===================================================================
--- z3ext.statusmessage/tags/1.3.0/src/z3ext/statusmessage/README.txt	                        (rev 0)
+++ z3ext.statusmessage/tags/1.3.0/src/z3ext/statusmessage/README.txt	2008-11-20 16:17:54 UTC (rev 93179)
@@ -0,0 +1,99 @@
+=====================
+Portal status message
+=====================
+
+Instead include notification messages directly to template,
+developer can use messaging service.
+
+Main interface is IStatusMessage, it is adapter for IBrowserRequest
+so we can have different implementations, for example cookie based or session.
+
+By default only session based service implemented.
+
+   >>> from zope import interface, component
+   >>> from zope.interface.verify import verifyClass
+
+   >>> from z3ext.statusmessage import interfaces, session, message
+
+   >>> verifyClass(interfaces.IStatusMessage, session.MessageService)
+   True
+
+   >>> component.provideAdapter(session.MessageService)
+
+   >>> from zope.publisher.browser import TestRequest
+   >>> request = TestRequest()
+
+   >>> service = interfaces.IStatusMessage(request)
+
+   >>> bool(service)
+   False
+
+   >>> service.add('Test message')
+   Traceback (most recent call last):
+   ...
+   ComponentLookupError: ...
+
+   >>> service.clear()
+   ()
+
+
+Before we can use message service we need register message type.
+
+   >>> component.provideAdapter(message.InformationMessage, name='info')
+
+   >>> msg = component.getAdapter(request, interfaces.IMessage, 'info')
+   >>> msg.render('Test message')
+   '<div class="statusMessage">Test message</div>'
+
+Now we can add messages.
+
+   >>> service.add('Test message')
+
+   >>> bool(service)
+   True
+
+   >>> service.messages()
+   ['<div class="statusMessage">Test message</div>']
+
+
+Let's register another message type.
+
+   >>> component.provideAdapter(message.WarningMessage, name='warning')
+
+   >>> service.add('Warning message', 'warning')
+
+   >>> service.messages()
+   ['<div class="statusMessage">Test message</div>', '<div class="statusWarningMessage">Warning message</div>']
+
+Error message, we can add exception object
+
+   >>> component.provideAdapter(message.ErrorMessage, name='error')
+
+   >>> service.add(Exception('Error message'), 'error')
+
+or text message
+
+   >>> service.add('Error message', 'error')
+
+   >>> for msg in service.messages():
+   ...     print msg
+   <div class="statusMessage">Test message</div>
+   <div class="statusWarningMessage">Warning message</div>
+   <div class="statusStopMessage">Exception: Error message</div>
+   <div class="statusStopMessage">Error message</div>
+
+
+Clearing service
+----------------
+
+clear() method return all messages and clear service.
+
+   >>> for msg in service.clear():
+   ...     print msg
+   <div class="statusMessage">Test message</div>
+   <div class="statusWarningMessage">Warning message</div>
+   <div class="statusStopMessage">Exception: Error message</div>
+   <div class="statusStopMessage">Error message</div>
+
+   >>> bool(service)
+   False

Deleted: z3ext.statusmessage/tags/1.3.0/src/z3ext/statusmessage/interfaces.py
===================================================================
--- z3ext.statusmessage/trunk/src/z3ext/statusmessage/interfaces.py	2008-11-20 12:39:07 UTC (rev 93154)
+++ z3ext.statusmessage/tags/1.3.0/src/z3ext/statusmessage/interfaces.py	2008-11-20 16:17:54 UTC (rev 93179)
@@ -1,37 +0,0 @@
-##############################################################################
-#
-# 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.
-#
-##############################################################################
-"""
-
-$Id$
-"""
-from zope import interface
-
-SESSIONKEY = 'z3ext.statusmessage'
-
-
-class IMessage(interface.Interface):
-    """ message """
-
-    def render(message):
-        """ render message """
-
-
-class IStatusMessage(interface.Interface):
-    """ message service """
-
-    def add(text, type='info'):
-        """ add message text as message to service """
-
-    def __nonzero__():
-        """ check is service has messages """

Copied: z3ext.statusmessage/tags/1.3.0/src/z3ext/statusmessage/interfaces.py (from rev 93178, z3ext.statusmessage/trunk/src/z3ext/statusmessage/interfaces.py)
===================================================================
--- z3ext.statusmessage/tags/1.3.0/src/z3ext/statusmessage/interfaces.py	                        (rev 0)
+++ z3ext.statusmessage/tags/1.3.0/src/z3ext/statusmessage/interfaces.py	2008-11-20 16:17:54 UTC (rev 93179)
@@ -0,0 +1,43 @@
+##############################################################################
+#
+# 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.
+#
+##############################################################################
+"""
+
+$Id$
+"""
+from zope import interface
+
+SESSIONKEY = 'z3ext.statusmessage'
+
+
+class IMessage(interface.Interface):
+    """ message """
+
+    def render(message):
+        """ render message """
+
+
+class IStatusMessage(interface.Interface):
+    """ message service """
+
+    def add(text, type='info'):
+        """ add message text as message to service """
+
+    def clear():
+        """ return all mesasges and clear """
+
+    def messages():
+        """ return all messages """
+
+    def __nonzero__():
+        """ check is service has messages """

Deleted: z3ext.statusmessage/tags/1.3.0/src/z3ext/statusmessage/session.py
===================================================================
--- z3ext.statusmessage/trunk/src/z3ext/statusmessage/session.py	2008-11-20 12:39:07 UTC (rev 93154)
+++ z3ext.statusmessage/tags/1.3.0/src/z3ext/statusmessage/session.py	2008-11-20 16:17:54 UTC (rev 93179)
@@ -1,65 +0,0 @@
-##############################################################################
-#
-# 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.
-#
-##############################################################################
-"""
-
-$Id$
-"""
-from zope import interface, component
-from zope.component import getAdapter
-from zope.session.interfaces import ISession
-from zope.publisher.interfaces.browser import IBrowserRequest
-
-from interfaces import SESSIONKEY, IMessage, IStatusMessage
-
-
-class MessageService(object):
-    """ message service """
-    component.adapts(IBrowserRequest)
-    interface.implements(IStatusMessage)
-
-    def __init__(self, request):
-        self.request = request
-
-    def add(self, text, type='info'):
-        message = getAdapter(self.request, IMessage, type)
-
-        session = ISession(self.request, None)
-        if session is not None:
-            try:
-                data = session[SESSIONKEY]
-                messages = data.get('messages', [])
-                messages.append(message.render(text))
-                data['messages'] = messages
-            except Exception, e:
-                print e
-
-    def clear(self):
-        session = ISession(self.request, None)
-        if session is not None:
-            data = session.get(SESSIONKEY)
-            if data is not None:
-                messages = data.get('messages')
-                if messages:
-                    del data['messages']
-                    return messages
-        return ()
-
-    def __nonzero__(self):
-        session = ISession(request, None)
-        if session is not None:
-            data = session.get(SESSIONKEY)
-            if data:
-                return len(data.get('messages', ())) > 0
-        else:
-            return False

Copied: z3ext.statusmessage/tags/1.3.0/src/z3ext/statusmessage/session.py (from rev 93178, z3ext.statusmessage/trunk/src/z3ext/statusmessage/session.py)
===================================================================
--- z3ext.statusmessage/tags/1.3.0/src/z3ext/statusmessage/session.py	                        (rev 0)
+++ z3ext.statusmessage/tags/1.3.0/src/z3ext/statusmessage/session.py	2008-11-20 16:17:54 UTC (rev 93179)
@@ -0,0 +1,69 @@
+##############################################################################
+#
+# 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.
+#
+##############################################################################
+"""
+
+$Id$
+"""
+from zope import interface, component
+from zope.component import getAdapter
+from zope.session.interfaces import ISession
+from zope.publisher.interfaces.browser import IBrowserRequest
+
+from interfaces import SESSIONKEY, IMessage, IStatusMessage
+
+
+class MessageService(object):
+    """ message service """
+    component.adapts(IBrowserRequest)
+    interface.implements(IStatusMessage)
+
+    def __init__(self, request):
+        self.request = request
+
+    def add(self, text, type='info'):
+        message = getAdapter(self.request, IMessage, type)
+
+        session = ISession(self.request, None)
+        if session is not None:
+            try:
+                data = session[SESSIONKEY]
+                messages = data.get('messages', [])
+                messages.append(message.render(text))
+                data['messages'] = messages
+            except Exception, e:
+                print e
+
+    def clear(self):
+        session = ISession(self.request, None)
+        if session is not None:
+            data = session.get(SESSIONKEY)
+            if data is not None:
+                messages = data.get('messages')
+                if messages:
+                    del data['messages']
+                    return messages
+        return ()
+
+    def messages(self):
+        session = ISession(self.request, None)
+        if session is not None:
+            data = session.get(SESSIONKEY)
+            if data is not None:
+                messages = data.get('messages')
+                if messages:
+                    return messages
+        return ()
+
+    def __nonzero__(self):
+        return bool(self.messages())

Deleted: z3ext.statusmessage/tags/1.3.0/src/z3ext/statusmessage/tests.py
===================================================================
--- z3ext.statusmessage/trunk/src/z3ext/statusmessage/tests.py	2008-11-20 12:39:07 UTC (rev 93154)
+++ z3ext.statusmessage/tags/1.3.0/src/z3ext/statusmessage/tests.py	2008-11-20 16:17:54 UTC (rev 93179)
@@ -1,69 +0,0 @@
-##############################################################################
-#
-# 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.
-#
-##############################################################################
-""" z3ext.statusmessage tests
-
-$Id$
-"""
-__docformat__ = "reStructuredText"
-
-import unittest, doctest
-from zope.app.testing import setup
-
-from zope import interface, component
-from zope.component import provideAdapter
-from zope.session.interfaces import ISession
-from zope.publisher.interfaces.browser import IBrowserRequest
-from zope.component import provideUtility
-
-import browser
-
-
-class Session(dict):
-
-    def __getitem__(self, key):
-        if not self.has_key(key):
-            self[key] = {}
-
-        return super(Session, self).__getitem__(key)
-
-session = Session()
-
- at interface.implementer(ISession)
- at component.adapter(IBrowserRequest)
-def getSession(request):
-    return session
-
-
-def setUp(test):
-    setup.placelessSetUp()
-    provideAdapter(getSession)
-    provideAdapter(browser.StatusMessage, name='statusMessage')
-    provideAdapter(browser.Message)
-    provideAdapter(browser.InformationMessage)
-    provideAdapter(browser.ErrorMessage)
-    provideAdapter(browser.WarningMessage)
-
-
-def tearDown(test):
-    session.__init__()
-    setup.placelessTearDown()
-    
-
-def test_suite():
-    return unittest.TestSuite((
-        doctest.DocFileSuite(
-            'README.txt',
-            setUp=setUp, tearDown=tearDown,
-            optionflags=doctest.NORMALIZE_WHITESPACE|doctest.ELLIPSIS),
-        ))



More information about the Checkins mailing list