[Checkins] SVN: zope.registry/trunk/s Removed 2to3 as a dependency, code works in both Python 2&3.

Joel Bohmann joelboh at gmail.com
Tue Aug 2 19:11:15 EDT 2011


Log message for revision 122450:
  Removed 2to3 as a dependency, code works in both Python 2&3.

Changed:
  U   zope.registry/trunk/setup.py
  U   zope.registry/trunk/src/zope/registry/__init__.py
  U   zope.registry/trunk/src/zope/registry/interfaces.py
  U   zope.registry/trunk/src/zope/registry/tests/__init__.py
  U   zope.registry/trunk/src/zope/registry/tests/test_adapter.py
  U   zope.registry/trunk/src/zope/registry/tests/test_extending.py
  U   zope.registry/trunk/src/zope/registry/tests/test_handler.py
  U   zope.registry/trunk/src/zope/registry/tests/test_subscriber.py
  U   zope.registry/trunk/src/zope/registry/tests/test_utility.py

-=-
Modified: zope.registry/trunk/setup.py
===================================================================
--- zope.registry/trunk/setup.py	2011-08-02 18:49:17 UTC (rev 122449)
+++ zope.registry/trunk/setup.py	2011-08-02 23:11:14 UTC (rev 122450)
@@ -22,12 +22,6 @@
 import os
 from setuptools import setup
 
-extra = {}
-if sys.version_info >= (3,):
-    extra['setup_requires'] = ['zope.fixers']
-    extra['use_2to3'] = True
-    extra['use_2to3_fixers'] = ['zope.fixers']
-
 def read(*rnames):
     return open(os.path.join(os.path.dirname(__file__), *rnames)).read()
 
@@ -39,25 +33,12 @@
     description='Zope Component Architecture',
     author='Zope Foundation and Contributors',
     author_email='zope-dev at zope.org',
-    long_description=(
-        read('README.txt')
-        + '\n' +
-        'Detailed Documentation\n'
-        '**********************\n'
-        + '\n' +
-        read('REGISTRY.txt')
-        + '\n' +
-        read('CHANGES.txt')
-        + '\n' +
-        'Download\n'
-        '********\n'
-        ),
+    long_description=(read('README.txt')),
     packages=['zope', 'zope.registry', 'zope.registry.tests'],
     package_dir={'': 'src'},
     namespace_packages=['zope'],
     install_requires=['setuptools', 'zope.interface', 'zope.event'],
     tests_require=['setuptools', 'zope.interface', 'zope.event'],
     test_suite='zope.registry.tests',
-    zip_safe=False,
-    **extra
+    zip_safe=False
     )

Modified: zope.registry/trunk/src/zope/registry/__init__.py
===================================================================
--- zope.registry/trunk/src/zope/registry/__init__.py	2011-08-02 18:49:17 UTC (rev 122449)
+++ zope.registry/trunk/src/zope/registry/__init__.py	2011-08-02 23:11:14 UTC (rev 122450)
@@ -20,8 +20,8 @@
 
 from zope.interface import Interface
 from zope.interface import implementedBy
-from zope.interface import implements
-from zope.interface import implementsOnly
+from zope.interface import implementer
+from zope.interface import implementer_only
 from zope.interface import providedBy
 from zope.interface.adapter import AdapterRegistry
 from zope.interface.interfaces import ISpecification
@@ -53,8 +53,6 @@
 
 class Components(object):
 
-    implements(IComponents)
-
     def __init__(self, name='', bases=()):
         assert isinstance(name, string_types)
         self.__name__ = name
@@ -393,6 +391,7 @@
     def handle(self, *objects):
         self.adapters.subscribers(objects, None)
 
+Components = implementer(IComponents)(Components)
 
 def _getUtilityProvided(component):
     provided = list(providedBy(component))
@@ -437,11 +436,8 @@
         result.append(r)
     return tuple(result)
 
-
 class UtilityRegistration(object):
 
-    implements(IUtilityRegistration)
-
     def __init__(self, registry, provided, name, component, doc, factory=None):
         (self.registry, self.provided, self.name, self.component, self.info,
          self.factory
@@ -477,10 +473,10 @@
     def __ge__(self, other):
         return repr(self) >= repr(other)
 
+UtilityRegistration = implementer(IUtilityRegistration)(UtilityRegistration)
+
 class AdapterRegistration(object):
 
-    implements(IAdapterRegistration)
-
     def __init__(self, registry, required, provided, name, component, doc):
         (self.registry, self.required, self.provided, self.name,
          self.factory, self.info
@@ -516,14 +512,16 @@
     def __ge__(self, other):
         return repr(self) >= repr(other)
 
+AdapterRegistration = implementer(IAdapterRegistration)(AdapterRegistration)
+
 class SubscriptionRegistration(AdapterRegistration):
+    pass
 
-    implementsOnly(ISubscriptionAdapterRegistration)
+SubscriptionRegistration = implementer_only(ISubscriptionAdapterRegistration)\
+                                           (SubscriptionRegistration)
 
 class HandlerRegistration(AdapterRegistration):
 
-    implementsOnly(IHandlerRegistration)
-
     def __init__(self, registry, required, name, handler, doc):
         (self.registry, self.required, self.name, self.handler, self.info
          ) = registry, required, name, handler, doc
@@ -543,3 +541,5 @@
             getattr(self.factory, '__name__', repr(self.factory)), self.info,
             )
 
+HandlerRegistration = implementer_only(IHandlerRegistration)\
+                                      (HandlerRegistration)

Modified: zope.registry/trunk/src/zope/registry/interfaces.py
===================================================================
--- zope.registry/trunk/src/zope/registry/interfaces.py	2011-08-02 18:49:17 UTC (rev 122449)
+++ zope.registry/trunk/src/zope/registry/interfaces.py	2011-08-02 23:11:14 UTC (rev 122450)
@@ -18,7 +18,7 @@
 
 from zope.interface import Attribute
 from zope.interface import Interface
-from zope.interface import implements
+from zope.interface import implementer
 
 if sys.version_info[0] == 3:
     def _u(s):
@@ -46,13 +46,13 @@
 
     object = Attribute("The subject of the event.")
 
-
 class ObjectEvent(object):
-    implements(IObjectEvent)
 
     def __init__(self, object):
         self.object = object
 
+ObjectEvent = implementer(IObjectEvent)(ObjectEvent)
+
 class IComponentArchitecture(Interface):
     """The Component Architecture is defined by two key components: Adapters
     and Utiltities. Both are managed by site managers. All other components
@@ -569,27 +569,36 @@
 class RegistrationEvent(ObjectEvent):
     """There has been a change in a registration
     """
-    implements(IRegistrationEvent)
 
     def __repr__(self):
         return "%s event:\n%r" % (self.__class__.__name__, self.object)
 
+RegistrationEvent = implementer(IRegistrationEvent)(RegistrationEvent)
+
 class IRegistered(IRegistrationEvent):
     """A component or factory was registered
     """
+    pass
 
 class Registered(RegistrationEvent):
-    implements(IRegistered)
+    """A component or factory was registered
+    """
+    pass
 
+Registered = implementer(IRegistered)(Registered)
+
 class IUnregistered(IRegistrationEvent):
     """A component or factory was unregistered
     """
+    pass
 
 class Unregistered(RegistrationEvent):
     """A component or factory was unregistered
     """
-    implements(IUnregistered)
+    pass
 
+Unregistered = implementer(IUnregistered)(Unregistered)
+
 class IComponentRegistry(Interface):
     """Register components
     """

Modified: zope.registry/trunk/src/zope/registry/tests/__init__.py
===================================================================
--- zope.registry/trunk/src/zope/registry/tests/__init__.py	2011-08-02 18:49:17 UTC (rev 122449)
+++ zope.registry/trunk/src/zope/registry/tests/__init__.py	2011-08-02 23:11:14 UTC (rev 122450)
@@ -49,11 +49,15 @@
         return "%s(%s)" % (self.__class__.__name__, self.__name__)
 
 class U1(U):
-    interface.implements(I1)
+    pass
 
+U1 = interface.implementer(I1)(U1)
+
 class U12(U):
-    interface.implements(I1, I2)
+    pass
 
+U12 = interface.implementer(I1, I2)(U12)
+
 class IA1(interface.Interface):
     pass
 
@@ -73,29 +77,37 @@
 
 class A12_1(A):
     registry.adapts(I1, I2)
-    interface.implements(IA1)
 
+A12_1 = interface.implementer(IA1)(A12_1)
+
 class A12_(A):
     registry.adapts(I1, I2)
 
 class A_2(A):
-    interface.implements(IA2)
+    pass
 
+A_2 = interface.implementer(IA2)(A_2)
+
 class A_3(A):
-    interface.implements(IA3)
+    pass
 
+A_3 = interface.implementer(IA3)(A_3)
+
 class A1_12(U):
     registry.adapts(I1)
-    interface.implements(IA1, IA2)
 
+A1_12 = interface.implementer(IA1, IA2)(A1_12)
+
 class A1_2(U):
     registry.adapts(I1)
-    interface.implements(IA2)
 
+A1_2 = interface.implementer(IA2)(A1_2)
+
 class A1_23(U):
     registry.adapts(I1)
-    interface.implements(IA1, IA3)
 
+A1_23 = interface.implementer(IA1, IA3)(A1_23)
+
 def noop(*args):
     pass
 

Modified: zope.registry/trunk/src/zope/registry/tests/test_adapter.py
===================================================================
--- zope.registry/trunk/src/zope/registry/tests/test_adapter.py	2011-08-02 18:49:17 UTC (rev 122449)
+++ zope.registry/trunk/src/zope/registry/tests/test_adapter.py	2011-08-02 23:11:14 UTC (rev 122450)
@@ -1,8 +1,16 @@
 import unittest
+import sys
 
 from zope.interface import implementedBy
 from zope.registry import ComponentLookupError
 
+if sys.version_info[0] == 3:
+    def _u(s):
+        return s
+else:
+    def _u(s):
+        return unicode(s, 'unicode_escape')
+
 class Test(unittest.TestCase):
 
     def setUp(self):
@@ -51,7 +59,7 @@
         self.assertTrue(self.components.unregisterAdapter(self.tests.A_2, required=[self.tests.I3]))
 
     def test_register_and_unregister_class_specific(self):
-        self.components.registerAdapter(self.tests.A_3, required=[self.tests.U], info=u'Really class specific')
+        self.components.registerAdapter(self.tests.A_3, required=[self.tests.U], info=_u('Really class specific'))
         self.assertTrue(self.components.unregisterAdapter(required=[self.tests.U], provided=self.tests.IA3))
       
     def test_registered_adapters_and_sorting(self):
@@ -59,16 +67,16 @@
         self.components.registerAdapter(self.tests.A1_12, provided=self.tests.IA2)
         self.components.registerAdapter(self.tests.A12_, provided=self.tests.IA2)
         self.components.registerAdapter(self.tests.A_2, required=[self.tests.I3])
-        self.components.registerAdapter(self.tests.A_3, required=[self.tests.U], info=u'Really class specific')
+        self.components.registerAdapter(self.tests.A_3, required=[self.tests.U], info=_u('Really class specific'))
 
         sorted_adapters = sorted(self.components.registeredAdapters())
-        sorted_adapters_name = map(lambda x: getattr(x, 'name'), sorted_adapters)
-        sorted_adapters_provided = map(lambda x: getattr(x, 'provided'), sorted_adapters) 
-        sorted_adapters_required = map(lambda x: getattr(x, 'required'), sorted_adapters)
-        sorted_adapters_info = map(lambda x: getattr(x, 'info'), sorted_adapters)
+        sorted_adapters_name = list(map(lambda x: getattr(x, 'name'), sorted_adapters))
+        sorted_adapters_provided = list(map(lambda x: getattr(x, 'provided'), sorted_adapters))
+        sorted_adapters_required = list(map(lambda x: getattr(x, 'required'), sorted_adapters))
+        sorted_adapters_info = list(map(lambda x: getattr(x, 'info'), sorted_adapters))
 
         self.assertEqual(len(sorted_adapters), 5)
-        self.assertEqual(sorted_adapters_name, [u'', u'', u'', u'', u''])
+        self.assertEqual(sorted_adapters_name, [_u(''), _u(''), _u(''), _u(''), _u('')])
         self.assertEqual(sorted_adapters_provided, [self.tests.IA1,
                                                     self.tests.IA2,
                                                     self.tests.IA2,
@@ -80,7 +88,7 @@
                                                     (self.tests.I1,),
                                                     (self.tests.I3,),
                                                     (implementedBy(self.tests.U),)])
-        self.assertEqual(sorted_adapters_info, [u'', u'', u'', u'', u'Really class specific'])
+        self.assertEqual(sorted_adapters_info, [_u(''), _u(''), _u(''), _u(''), _u('Really class specific')])
 
     def test_get_none_existing_adapter(self):
         self.assertRaises(ComponentLookupError, self.components.getMultiAdapter, (self.tests.U(1),), self.tests.IA1)
@@ -98,46 +106,46 @@
         self.components.registerAdapter(self.tests.A1_12, provided=self.tests.IA2)
         self.components.registerAdapter(self.tests.A12_, provided=self.tests.IA2)
         self.components.registerAdapter(self.tests.A_2, required=[self.tests.I3])
-        self.components.registerAdapter(self.tests.A_3, required=[self.tests.U], info=u'Really class specific')
+        self.components.registerAdapter(self.tests.A_3, required=[self.tests.U], info=_u('Really class specific'))
 
         self.assertTrue(self.components.unregisterAdapter(self.tests.A12_1))
         self.assertTrue(self.components.unregisterAdapter(required=[self.tests.U], provided=self.tests.IA3))
 
         sorted_adapters = sorted(self.components.registeredAdapters())
-        sorted_adapters_name = map(lambda x: getattr(x, 'name'), sorted_adapters)
-        sorted_adapters_provided = map(lambda x: getattr(x, 'provided'), sorted_adapters) 
-        sorted_adapters_required = map(lambda x: getattr(x, 'required'), sorted_adapters)
-        sorted_adapters_info = map(lambda x: getattr(x, 'info'), sorted_adapters)
+        sorted_adapters_name = list(map(lambda x: getattr(x, 'name'), sorted_adapters))
+        sorted_adapters_provided = list(map(lambda x: getattr(x, 'provided'), sorted_adapters))
+        sorted_adapters_required = list(map(lambda x: getattr(x, 'required'), sorted_adapters))
+        sorted_adapters_info = list(map(lambda x: getattr(x, 'info'), sorted_adapters))
 
         self.assertEqual(len(sorted_adapters), 3)
-        self.assertEqual(sorted_adapters_name, [u'', u'', u''])
+        self.assertEqual(sorted_adapters_name, [_u(''), _u(''), _u('')])
         self.assertEqual(sorted_adapters_provided, [self.tests.IA2,
                                                     self.tests.IA2,
                                                     self.tests.IA2])
         self.assertEqual(sorted_adapters_required, [(self.tests.I1, self.tests.I2),
                                                     (self.tests.I1,),
                                                     (self.tests.I3,)])
-        self.assertEqual(sorted_adapters_info, [u'', u'', u''])
+        self.assertEqual(sorted_adapters_info, [_u(''), _u(''), _u('')])
 
     def test_register_named_adapter(self):
-        self.components.registerAdapter(self.tests.A1_12, provided=self.tests.IA2, name=u'test')
+        self.components.registerAdapter(self.tests.A1_12, provided=self.tests.IA2, name=_u('test'))
         self.assertTrue(self.components.queryMultiAdapter((self.tests.U1(1),), self.tests.IA2) is None)
-        self.assertEqual(repr(self.components.queryMultiAdapter((self.tests.U1(1),), self.tests.IA2, name=u'test')), 'A1_12(U1(1))')
+        self.assertEqual(repr(self.components.queryMultiAdapter((self.tests.U1(1),), self.tests.IA2, name=_u('test'))), 'A1_12(U1(1))')
 
         self.assertTrue(self.components.queryAdapter(self.tests.U1(1), self.tests.IA2) is None)
-        self.assertEqual(repr(self.components.queryAdapter(self.tests.U1(1), self.tests.IA2, name=u'test')), 'A1_12(U1(1))')
-        self.assertEqual(repr(self.components.getAdapter(self.tests.U1(1), self.tests.IA2, name=u'test')), 'A1_12(U1(1))')
+        self.assertEqual(repr(self.components.queryAdapter(self.tests.U1(1), self.tests.IA2, name=_u('test'))), 'A1_12(U1(1))')
+        self.assertEqual(repr(self.components.getAdapter(self.tests.U1(1), self.tests.IA2, name=_u('test'))), 'A1_12(U1(1))')
 
     def test_get_adapters(self):
-        self.components.registerAdapter(self.tests.A1_12, provided=self.tests.IA1, name=u'test 1')
-        self.components.registerAdapter(self.tests.A1_23, provided=self.tests.IA2, name=u'test 2')
+        self.components.registerAdapter(self.tests.A1_12, provided=self.tests.IA1, name=_u('test 1'))
+        self.components.registerAdapter(self.tests.A1_23, provided=self.tests.IA2, name=_u('test 2'))
         self.components.registerAdapter(self.tests.A1_12, provided=self.tests.IA2)
         self.components.registerAdapter(self.tests.A1_12, provided=self.tests.IA2)
 
         adapters = list(self.components.getAdapters((self.tests.U1(1),), self.tests.IA2))
         self.assertEqual(len(adapters), 2)
-        self.assertEqual(adapters[0][0], u'test 2')
-        self.assertEqual(adapters[1][0], u'')
+        self.assertEqual(adapters[0][0], _u('test 2'))
+        self.assertEqual(adapters[1][0], _u(''))
         self.assertEqual(repr(adapters[0][1]), 'A1_23(U1(1))')
         self.assertEqual(repr(adapters[1][1]), 'A1_12(U1(1))')
 
@@ -145,27 +153,27 @@
         self.components.registerAdapter(self.tests.A1_12, provided=self.tests.IA2)
         self.components.registerAdapter(self.tests.noop, 
                                         required=[self.tests.IA1], provided=self.tests.IA2, 
-                                        name=u'test noop')
+                                        name=_u('test noop'))
 
-        self.assertTrue(self.components.queryAdapter(self.tests.U1(9), self.tests.IA2, name=u'test noop') is None)
+        self.assertTrue(self.components.queryAdapter(self.tests.U1(9), self.tests.IA2, name=_u('test noop')) is None)
         adapters = list(self.components.getAdapters((self.tests.U1(1),), self.tests.IA2))
         self.assertEqual(len(adapters), 1)
-        self.assertEqual(adapters[0][0], u'')
+        self.assertEqual(adapters[0][0], _u(''))
         self.assertEqual(repr(adapters[0][1]), 'A1_12(U1(1))')
 
         self.assertTrue(self.components.unregisterAdapter(self.tests.A1_12, provided=self.tests.IA2))
 
         sorted_adapters = sorted(self.components.registeredAdapters())
-        sorted_adapters_name = map(lambda x: getattr(x, 'name'), sorted_adapters)
-        sorted_adapters_provided = map(lambda x: getattr(x, 'provided'), sorted_adapters) 
-        sorted_adapters_required = map(lambda x: getattr(x, 'required'), sorted_adapters)
-        sorted_adapters_info = map(lambda x: getattr(x, 'info'), sorted_adapters)
+        sorted_adapters_name = list(map(lambda x: getattr(x, 'name'), sorted_adapters))
+        sorted_adapters_provided = list(map(lambda x: getattr(x, 'provided'), sorted_adapters))
+        sorted_adapters_required = list(map(lambda x: getattr(x, 'required'), sorted_adapters))
+        sorted_adapters_info = list(map(lambda x: getattr(x, 'info'), sorted_adapters))
 
         self.assertEqual(len(sorted_adapters), 1)
-        self.assertEqual(sorted_adapters_name, [u'test noop'])
+        self.assertEqual(sorted_adapters_name, [_u('test noop')])
         self.assertEqual(sorted_adapters_provided, [self.tests.IA2])
         self.assertEqual(sorted_adapters_required, [(self.tests.IA1,)])
-        self.assertEqual(sorted_adapters_info, [u''])
+        self.assertEqual(sorted_adapters_info, [_u('')])
 
 
 def test_suite():

Modified: zope.registry/trunk/src/zope/registry/tests/test_extending.py
===================================================================
--- zope.registry/trunk/src/zope/registry/tests/test_extending.py	2011-08-02 18:49:17 UTC (rev 122449)
+++ zope.registry/trunk/src/zope/registry/tests/test_extending.py	2011-08-02 23:11:14 UTC (rev 122450)
@@ -1,5 +1,13 @@
 import unittest
+import sys
 
+if sys.version_info[0] == 3:
+    def _u(s):
+        return s
+else:
+    def _u(s):
+        return unicode(s, 'unicode_escape')
+
 class Test(unittest.TestCase):
 
     def setUp(self):
@@ -61,7 +69,7 @@
         def handle4(x):
             self.assertEqual(x, test_object1)
 
-        c1.registerHandler(handle1, info=u'First handler')
+        c1.registerHandler(handle1, info=_u('First handler'))
         c2.registerHandler(handle, required=[self.tests.U])
         c3.registerHandler(handle3)
         c4.registerHandler(handle4)

Modified: zope.registry/trunk/src/zope/registry/tests/test_handler.py
===================================================================
--- zope.registry/trunk/src/zope/registry/tests/test_handler.py	2011-08-02 18:49:17 UTC (rev 122449)
+++ zope.registry/trunk/src/zope/registry/tests/test_handler.py	2011-08-02 23:11:14 UTC (rev 122450)
@@ -1,7 +1,15 @@
 import unittest
+import sys
 
 from zope.interface import implementedBy
 
+if sys.version_info[0] == 3:
+    def _u(s):
+        return s
+else:
+    def _u(s):
+        return unicode(s, 'unicode_escape')
+
 class Test(unittest.TestCase):
 
     def setUp(self):
@@ -19,7 +27,7 @@
         def handle1(x):
             self.assertEqual(x, test_object1)
 
-        self.components.registerHandler(handle1, info=u'First handler')
+        self.components.registerHandler(handle1, info=_u('First handler'))
         self.components.handle(test_object1)
 
         @registry.adapter(self.tests.I1, self.tests.I2)
@@ -36,8 +44,8 @@
             handle_calls.append(objects)
 
         self.assertRaises(TypeError, self.components.registerHandler, handle)
-        self.components.registerHandler(handle, required=[self.tests.I1], info=u'a comment')
-        self.components.registerHandler(handle, required=[self.tests.U], info=u'handle a class')
+        self.components.registerHandler(handle, required=[self.tests.I1], info=_u('a comment'))
+        self.components.registerHandler(handle, required=[self.tests.U], info=_u('handle a class'))
 
         test_object = self.tests.U1(1)
         self.components.handle(test_object)
@@ -63,20 +71,20 @@
         def handle(*objects):
             handle_calls.append(objects)
 
-        self.components.registerHandler(handle1, info=u'First handler')
+        self.components.registerHandler(handle1, info=_u('First handler'))
         self.components.registerHandler(handle12)
-        self.components.registerHandler(handle, required=[self.tests.I1], info=u'a comment')
-        self.components.registerHandler(handle, required=[self.tests.U], info=u'handle a class')
+        self.components.registerHandler(handle, required=[self.tests.I1], info=_u('a comment'))
+        self.components.registerHandler(handle, required=[self.tests.U], info=_u('handle a class'))
 
         handlers = list(self.components.registeredHandlers())
-        handlers_required = map(lambda x: getattr(x, 'required'), handlers)
-        handlers_handler = map(lambda x: getattr(x, 'handler'), handlers)
-        handlers_info = map(lambda x: getattr(x, 'info'), handlers)
+        handlers_required = list(map(lambda x: getattr(x, 'required'), handlers))
+        handlers_handler = list(map(lambda x: getattr(x, 'handler'), handlers))
+        handlers_info = list(map(lambda x: getattr(x, 'info'), handlers))
 
         self.assertEqual(len(handlers), 4)
         self.assertEqual(handlers_required, [(self.tests.I1,), (self.tests.I1, self.tests.I2), (self.tests.I1,), (implementedBy(self.tests.U),)])
         self.assertEqual(handlers_handler, [handle1, handle12, handle, handle])
-        self.assertEqual(handlers_info, [u'First handler', u'', u'a comment', u'handle a class'])
+        self.assertEqual(handlers_info, [_u('First handler'), _u(''), _u('a comment'), _u('handle a class')])
 
     def test_unregister_handler(self):
         from zope import registry
@@ -97,10 +105,10 @@
         def handle(*objects):
             handle_calls.append(objects)
 
-        self.components.registerHandler(handle1, info=u'First handler')
+        self.components.registerHandler(handle1, info=_u('First handler'))
         self.components.registerHandler(handle12)
-        self.components.registerHandler(handle, required=[self.tests.I1], info=u'a comment')
-        self.components.registerHandler(handle, required=[self.tests.U], info=u'handle a class')
+        self.components.registerHandler(handle, required=[self.tests.I1], info=_u('a comment'))
+        self.components.registerHandler(handle, required=[self.tests.U], info=_u('handle a class'))
 
         self.assertEqual(len(list(self.components.registeredHandlers())), 4)
         self.assertTrue(self.components.unregisterHandler(handle12))
@@ -135,8 +143,10 @@
             calls.append(3)
 
         class Event(object):
-            interface.implements(I)
+            pass
 
+        Event = interface.implementer(I)(Event)
+
         self.components.registerHandler(factory1, [I,])
         self.components.registerHandler(factory2, [I,])
         self.components.handle(Event())

Modified: zope.registry/trunk/src/zope/registry/tests/test_subscriber.py
===================================================================
--- zope.registry/trunk/src/zope/registry/tests/test_subscriber.py	2011-08-02 18:49:17 UTC (rev 122449)
+++ zope.registry/trunk/src/zope/registry/tests/test_subscriber.py	2011-08-02 23:11:14 UTC (rev 122450)
@@ -1,5 +1,13 @@
 import unittest
+import sys
 
+if sys.version_info[0] == 3:
+    def _u(s):
+        return s
+else:
+    def _u(s):
+        return unicode(s, 'unicode_escape')
+
 class Test(unittest.TestCase):
 
     def setUp(self):
@@ -23,9 +31,9 @@
         self.assertRaises(TypeError, self.components.registerSubscriptionAdapter, self.tests.A, required=[self.tests.IA1])
 
     def test_register_named_subscriber(self):
-        self.components.registerSubscriptionAdapter(self.tests.A, [self.tests.I1], self.tests.IA2, u'', u'a sample comment')
+        self.components.registerSubscriptionAdapter(self.tests.A, [self.tests.I1], self.tests.IA2, _u(''), _u('a sample comment'))
         self.assertRaises(TypeError, self.components.registerSubscriptionAdapter, 
-                          self.tests.A, [self.tests.I1], self.tests.IA2, u'oops', u'a sample comment')
+                          self.tests.A, [self.tests.I1], self.tests.IA2, _u('oops'), _u('a sample comment'))
         subscribers = self.components.subscribers((self.tests.U1(1),), self.tests.IA2)
         self.assertEqual(len(subscribers), 1)
         self.assertEqual(repr(subscribers[0]), 'A(U1(1),)')
@@ -38,23 +46,23 @@
     def test_sorting_registered_subscription_adapters(self):
         self.components.registerSubscriptionAdapter(self.tests.A1_2)
         self.components.registerSubscriptionAdapter(self.tests.A1_12, provided=self.tests.IA2)
-        self.components.registerSubscriptionAdapter(self.tests.A, [self.tests.I1], self.tests.IA2, info=u'a sample comment')
-        self.components.registerSubscriptionAdapter(self.tests.A, [self.tests.I1], self.tests.IA2, u'', u'a sample comment')
+        self.components.registerSubscriptionAdapter(self.tests.A, [self.tests.I1], self.tests.IA2, info=_u('a sample comment'))
+        self.components.registerSubscriptionAdapter(self.tests.A, [self.tests.I1], self.tests.IA2, _u(''), _u('a sample comment'))
         self.components.registerSubscriptionAdapter(self.tests.noop, [self.tests.I1], self.tests.IA2)
 
         sorted_subscribers = sorted(self.components.registeredSubscriptionAdapters())
-        sorted_subscribers_name = map(lambda x: getattr(x, 'name'), sorted_subscribers)
-        sorted_subscribers_provided = map(lambda x: getattr(x, 'provided'), sorted_subscribers) 
-        sorted_subscribers_required = map(lambda x: getattr(x, 'required'), sorted_subscribers)
-        sorted_subscribers_factory = map(lambda x: getattr(x, 'factory'), sorted_subscribers)
-        sorted_subscribers_info = map(lambda x: getattr(x, 'info'), sorted_subscribers)
+        sorted_subscribers_name = list(map(lambda x: getattr(x, 'name'), sorted_subscribers))
+        sorted_subscribers_provided = list(map(lambda x: getattr(x, 'provided'), sorted_subscribers))
+        sorted_subscribers_required = list(map(lambda x: getattr(x, 'required'), sorted_subscribers))
+        sorted_subscribers_factory = list(map(lambda x: getattr(x, 'factory'), sorted_subscribers))
+        sorted_subscribers_info = list(map(lambda x: getattr(x, 'info'), sorted_subscribers))
 
         self.assertEqual(len(sorted_subscribers), 5)
-        self.assertEqual(sorted_subscribers_name, [u'', u'', u'', u'', u''])
+        self.assertEqual(sorted_subscribers_name, [_u(''), _u(''), _u(''), _u(''), _u('')])
         self.assertEqual(sorted_subscribers_provided, [self.tests.IA2, self.tests.IA2, self.tests.IA2, self.tests.IA2, self.tests.IA2])
         self.assertEqual(sorted_subscribers_required, [(self.tests.I1,), (self.tests.I1,), (self.tests.I1,),(self.tests.I1,), (self.tests.I1,)])
         self.assertEqual(sorted_subscribers_factory, [self.tests.A, self.tests.A, self.tests.A1_12, self.tests.A1_2, self.tests.noop])
-        self.assertEqual(sorted_subscribers_info, [u'a sample comment', u'a sample comment', u'', u'', u''])
+        self.assertEqual(sorted_subscribers_info, [_u('a sample comment'), _u('a sample comment'), _u(''), _u(''), _u('')])
 
     def test_unregister(self):
         self.components.registerSubscriptionAdapter(self.tests.A1_2)
@@ -65,8 +73,8 @@
     def test_unregister_multiple(self):
         self.components.registerSubscriptionAdapter(self.tests.A1_2)
         self.components.registerSubscriptionAdapter(self.tests.A1_12, provided=self.tests.IA2)
-        self.components.registerSubscriptionAdapter(self.tests.A, [self.tests.I1], self.tests.IA2, info=u'a sample comment')
-        self.components.registerSubscriptionAdapter(self.tests.A, [self.tests.I1], self.tests.IA2, u'', u'a sample comment')
+        self.components.registerSubscriptionAdapter(self.tests.A, [self.tests.I1], self.tests.IA2, info=_u('a sample comment'))
+        self.components.registerSubscriptionAdapter(self.tests.A, [self.tests.I1], self.tests.IA2, _u(''), _u('a sample comment'))
         self.components.registerSubscriptionAdapter(self.tests.noop, [self.tests.I1], self.tests.IA2)
         self.assertEqual(len(self.components.subscribers((self.tests.U1(1),), self.tests.IA2)), 4)
         self.assertEqual(len(list(self.components.registeredSubscriptionAdapters())), 5)
@@ -101,4 +109,4 @@
     return unittest.TestSuite((unittest.makeSuite(Test),))
 
 if __name__ == '__main__':
-    main(defaultTest='test_suite')       
+    main(defaultTest='test_suite')

Modified: zope.registry/trunk/src/zope/registry/tests/test_utility.py
===================================================================
--- zope.registry/trunk/src/zope/registry/tests/test_utility.py	2011-08-02 18:49:17 UTC (rev 122449)
+++ zope.registry/trunk/src/zope/registry/tests/test_utility.py	2011-08-02 23:11:14 UTC (rev 122450)
@@ -1,5 +1,13 @@
 import unittest
+import sys
 
+if sys.version_info[0] == 3:
+    def _u(s):
+        return s
+else:
+    def _u(s):
+        return unicode(s, 'unicode_escape')
+
 class Test(unittest.TestCase):
 
     def setUp(self):
@@ -58,16 +66,16 @@
         test_object2 = self.tests.U12(2)
         test_object3 = self.tests.U12(3)
         self.components.registerUtility(test_object1)
-        self.components.registerUtility(test_object3, self.tests.I2, u'name')
+        self.components.registerUtility(test_object3, self.tests.I2, _u('name'))
         self.components.registerUtility(test_object2, self.tests.I2)
 
         sorted_utilities = sorted(self.components.registeredUtilities())
-        sorted_utilities_name = map(lambda x: getattr(x, 'name'), sorted_utilities)
-        sorted_utilities_component = map(lambda x: getattr(x, 'component'), sorted_utilities)
-        sorted_utilities_provided = map(lambda x: getattr(x, 'provided'), sorted_utilities)
+        sorted_utilities_name = list(map(lambda x: getattr(x, 'name'), sorted_utilities))
+        sorted_utilities_component = list(map(lambda x: getattr(x, 'component'), sorted_utilities))
+        sorted_utilities_provided = list(map(lambda x: getattr(x, 'provided'), sorted_utilities))
 
         self.assertEqual(len(sorted_utilities), 3)
-        self.assertEqual(sorted_utilities_name, [u'', u'', u'name'])
+        self.assertEqual(sorted_utilities_name, [_u(''), _u(''), _u('name')])
         self.assertEqual(sorted_utilities_component, [test_object1, test_object2, test_object3])
         self.assertEqual(sorted_utilities_provided, [self.tests.I1, self.tests.I2, self.tests.I2])
 
@@ -78,10 +86,10 @@
         test_object4 = self.tests.U1(4)
         self.components.registerUtility(test_object1)
         self.components.registerUtility(test_object2, self.tests.I2)
-        self.components.registerUtility(test_object3, self.tests.I2, u'name')
+        self.components.registerUtility(test_object3, self.tests.I2, _u('name'))
         self.assertEqual(self.components.getUtility(self.tests.I1), test_object1)
 
-        self.components.registerUtility(test_object4, info=u'use 4 now')
+        self.components.registerUtility(test_object4, info=_u('use 4 now'))
         self.assertEqual(self.components.getUtility(self.tests.I1), test_object4)
 
     def test_unregister_utility(self):
@@ -105,12 +113,12 @@
         test_object3 = self.tests.U12(3)
         self.components.registerUtility(test_object1)
         self.components.registerUtility(test_object2, self.tests.I2)
-        self.components.registerUtility(test_object3, self.tests.I2, u'name')
+        self.components.registerUtility(test_object3, self.tests.I2, _u('name'))
 
         sorted_utilities = sorted(self.components.getUtilitiesFor(self.tests.I2))
         self.assertEqual(len(sorted_utilities), 2)
-        self.assertEqual(sorted_utilities[0], (u'', test_object2))
-        self.assertEqual(sorted_utilities[1], (u'name', test_object3))
+        self.assertEqual(sorted_utilities[0], (_u(''), test_object2))
+        self.assertEqual(sorted_utilities[1], (_u('name'), test_object3))
 
     def test_get_all_utilities_registered_for(self):
         test_object1 = self.tests.U1(1)
@@ -119,13 +127,13 @@
         test_object4 = self.tests.U('ext')
         self.components.registerUtility(test_object1)
         self.components.registerUtility(test_object2, self.tests.I2)
-        self.components.registerUtility(test_object3, self.tests.I2, u'name')
+        self.components.registerUtility(test_object3, self.tests.I2, _u('name'))
         self.components.registerUtility(test_object4, self.tests.I2e)
 
         sorted_utilities = sorted(self.components.getUtilitiesFor(self.tests.I2))
         self.assertEqual(len(sorted_utilities), 2)
-        self.assertEqual(sorted_utilities[0], (u'', test_object2))
-        self.assertEqual(sorted_utilities[1], (u'name', test_object3))
+        self.assertEqual(sorted_utilities[0], (_u(''), test_object2))
+        self.assertEqual(sorted_utilities[1], (_u('name'), test_object3))
 
         all_utilities = self.components.getAllUtilitiesRegisteredFor(self.tests.I2)
         self.assertEqual(len(all_utilities), 3)



More information about the checkins mailing list