summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/zope/interface/tests/odd.py7
-rw-r--r--src/zope/interface/tests/test_odd_declarations.py5
2 files changed, 10 insertions, 2 deletions
diff --git a/src/zope/interface/tests/odd.py b/src/zope/interface/tests/odd.py
index a2d248b..18bca44 100644
--- a/src/zope/interface/tests/odd.py
+++ b/src/zope/interface/tests/odd.py
@@ -77,7 +77,6 @@ class MetaMetaClass(type):
class MetaClass(object):
"""Odd classes
"""
- __metaclass__ = MetaMetaClass
def __init__(self, name, bases, dict):
self.__name__ = name
@@ -97,6 +96,12 @@ class MetaClass(object):
def __repr__(self):
return "<odd class %s at %s>" % (self.__name__, hex(id(self)))
+
+MetaClass = MetaMetaClass('MetaClass',
+ MetaClass.__bases__,
+ {k: v for k, v in MetaClass.__dict__.items()
+ if k not in ('__dict__',)})
+
class OddInstance(object):
def __init__(self, cls):
diff --git a/src/zope/interface/tests/test_odd_declarations.py b/src/zope/interface/tests/test_odd_declarations.py
index fa35c18..5480730 100644
--- a/src/zope/interface/tests/test_odd_declarations.py
+++ b/src/zope/interface/tests/test_odd_declarations.py
@@ -36,7 +36,10 @@ class I31(I3): pass
class I4(Interface): pass
class I5(Interface): pass
-class Odd(object): __metaclass__ = odd.MetaClass
+class Odd(object):
+ pass
+Odd = odd.MetaClass('Odd', Odd.__bases__, {})
+
class B(Odd): __implemented__ = I2