--- contrib/python/zope.interface/py2/zope/interface/common/tests/basemapping.py (index) +++ contrib/python/zope.interface/py2/zope/interface/common/tests/basemapping.py (working tree) @@ -15,7 +15,7 @@ """ from operator import __getitem__ -def testIReadMapping(self, inst, state, absent): +def _testIReadMapping(self, inst, state, absent): for key in state: self.assertEqual(inst[key], state[key]) self.assertEqual(inst.get(key, None), state[key]) @@ -28,39 +28,39 @@ def testIReadMapping(self, inst, state, absent): self.assertRaises(KeyError, __getitem__, inst, key) -def test_keys(self, inst, state): +def _test_keys(self, inst, state): # Return the keys of the mapping object inst_keys = list(inst.keys()); inst_keys.sort() state_keys = list(state.keys()) ; state_keys.sort() self.assertEqual(inst_keys, state_keys) -def test_iter(self, inst, state): +def _test_iter(self, inst, state): # Return the keys of the mapping object inst_keys = list(inst); inst_keys.sort() state_keys = list(state.keys()) ; state_keys.sort() self.assertEqual(inst_keys, state_keys) -def test_values(self, inst, state): +def _test_values(self, inst, state): # Return the values of the mapping object inst_values = list(inst.values()); inst_values.sort() state_values = list(state.values()) ; state_values.sort() self.assertEqual(inst_values, state_values) -def test_items(self, inst, state): +def _test_items(self, inst, state): # Return the items of the mapping object inst_items = list(inst.items()); inst_items.sort() state_items = list(state.items()) ; state_items.sort() self.assertEqual(inst_items, state_items) -def test___len__(self, inst, state): +def _test___len__(self, inst, state): # Return the number of items self.assertEqual(len(inst), len(state)) -def testIEnumerableMapping(self, inst, state): - test_keys(self, inst, state) - test_items(self, inst, state) - test_values(self, inst, state) - test___len__(self, inst, state) +def _testIEnumerableMapping(self, inst, state): + _test_keys(self, inst, state) + _test_items(self, inst, state) + _test_values(self, inst, state) + _test___len__(self, inst, state) class BaseTestIReadMapping(object): @@ -68,7 +68,7 @@ class BaseTestIReadMapping(object): inst = self._IReadMapping__sample() state = self._IReadMapping__stateDict() absent = self._IReadMapping__absentKeys() - testIReadMapping(self, inst, state, absent) + _testIReadMapping(self, inst, state, absent) class BaseTestIEnumerableMapping(BaseTestIReadMapping): @@ -77,25 +77,25 @@ class BaseTestIEnumerableMapping(BaseTestIReadMapping): # Return the keys of the mapping object inst = self._IEnumerableMapping__sample() state = self._IEnumerableMapping__stateDict() - test_keys(self, inst, state) + _test_keys(self, inst, state) def test_values(self): # Return the values of the mapping object inst = self._IEnumerableMapping__sample() state = self._IEnumerableMapping__stateDict() - test_values(self, inst, state) + _test_values(self, inst, state) def test_items(self): # Return the items of the mapping object inst = self._IEnumerableMapping__sample() state = self._IEnumerableMapping__stateDict() - test_items(self, inst, state) + _test_items(self, inst, state) def test___len__(self): # Return the number of items inst = self._IEnumerableMapping__sample() state = self._IEnumerableMapping__stateDict() - test___len__(self, inst, state) + _test___len__(self, inst, state) def _IReadMapping__stateDict(self): return self._IEnumerableMapping__stateDict() --- contrib/python/zope.interface/py2/zope/interface/tests/__init__.py (index) +++ contrib/python/zope.interface/py2/zope/interface/tests/__init__.py (working tree) @@ -23,7 +23,7 @@ class OptimizationTestMixin(object): # get the Python object from that. raise NotImplementedError - def test_optimizations(self): + def _test_optimizations(self): used = self._getTargetClass() fallback = self._getFallbackClass() --- contrib/python/zope.interface/py2/zope/interface/tests/dummy.py (index) +++ contrib/python/zope.interface/py2/zope/interface/tests/dummy.py (working tree) @@ -14,7 +14,7 @@ """ Dummy Module """ from zope.interface import moduleProvides -from zope.interface.tests.idummy import IDummyModule +from .idummy import IDummyModule moduleProvides(IDummyModule) --- contrib/python/zope.interface/py2/zope/interface/tests/test_adapter.py (index) +++ contrib/python/zope.interface/py2/zope/interface/tests/test_adapter.py (working tree) @@ -15,7 +15,7 @@ """ import unittest -from zope.interface.tests import OptimizationTestMixin +from __tests__.tests import OptimizationTestMixin # pylint:disable=inherit-non-class,protected-access,too-many-lines # pylint:disable=attribute-defined-outside-init,blacklisted-name @@ -1640,7 +1640,7 @@ class AdapterLookupBaseTests(unittest.TestCase): # but after https://github.com/zopefoundation/zope.interface/issues/200 # they get propagated. from zope.interface.interface import InterfaceClass - from zope.interface.tests import MissingSomeAttrs + from __tests__.tests import MissingSomeAttrs IFoo = InterfaceClass('IFoo') registry = self._makeRegistry() --- contrib/python/zope.interface/py2/zope/interface/tests/test_advice.py (index) +++ contrib/python/zope.interface/py2/zope/interface/tests/test_advice.py (working tree) @@ -35,7 +35,7 @@ from zope.interface._compat import _skip_under_py3k class FrameInfoTest(unittest.TestCase): def test_w_module(self): - from zope.interface.tests import advisory_testing + from . import advisory_testing (kind, module, f_locals, f_globals) = advisory_testing.moduleLevelFrameInfo self.assertEqual(kind, "module") @@ -44,7 +44,7 @@ class FrameInfoTest(unittest.TestCase): @_skip_under_py3k def test_w_ClassicClass(self): - from zope.interface.tests import advisory_testing + from . import advisory_testing (kind, module, f_locals, @@ -57,7 +57,7 @@ class FrameInfoTest(unittest.TestCase): self.assertTrue(d is advisory_testing.my_globals) def test_w_NewStyleClass(self): - from zope.interface.tests import advisory_testing + from . import advisory_testing (kind, module, f_locals, @@ -95,7 +95,7 @@ class AdviceTests(unittest.TestCase): @_skip_under_py3k def test_order(self): - from zope.interface.tests.advisory_testing import ping + from .advisory_testing import ping log = [] class Foo(object): ping(log, 1) @@ -111,7 +111,7 @@ class AdviceTests(unittest.TestCase): @_skip_under_py3k def test_single_explicit_meta(self): - from zope.interface.tests.advisory_testing import ping + from .advisory_testing import ping class Metaclass(type): pass @@ -126,7 +126,7 @@ class AdviceTests(unittest.TestCase): @_skip_under_py3k def test_mixed_metas(self): - from zope.interface.tests.advisory_testing import ping + from .advisory_testing import ping class Metaclass1(type): pass @@ -160,7 +160,7 @@ class AdviceTests(unittest.TestCase): @_skip_under_py3k def test_meta_no_bases(self): - from zope.interface.tests.advisory_testing import ping + from .advisory_testing import ping from types import ClassType class Thing: ping([], 1) --- contrib/python/zope.interface/py2/zope/interface/tests/test_declarations.py (index) +++ contrib/python/zope.interface/py2/zope/interface/tests/test_declarations.py (working tree) @@ -17,9 +17,9 @@ import unittest from zope.interface._compat import _skip_under_py3k from zope.interface._compat import PYTHON3 -from zope.interface.tests import OptimizationTestMixin -from zope.interface.tests import MissingSomeAttrs -from zope.interface.tests.test_interface import NameAndModuleComparisonTestsMixin +from __tests__.tests import OptimizationTestMixin +from __tests__.tests import MissingSomeAttrs +from __tests__.tests.test_interface import NameAndModuleComparisonTestsMixin # pylint:disable=inherit-non-class,too-many-lines,protected-access # pylint:disable=blacklisted-name,attribute-defined-outside-init @@ -297,7 +297,7 @@ class DeclarationTests(EmptyDeclarationTests): # the other way). from zope.interface import Interface from zope.interface.interface import InterfaceClass - from zope.interface.tests.test_ro import C3Setting + from __tests__.tests.test_ro import C3Setting from zope.interface import ro IBase = InterfaceClass('IBase') @@ -319,7 +319,7 @@ class DeclarationTests(EmptyDeclarationTests): from zope.interface import Interface from zope.interface import implementedBy from zope.interface import implementer - from zope.interface.tests.test_ro import C3Setting + from __tests__.tests.test_ro import C3Setting from zope.interface import ro class IBase(Interface): @@ -647,7 +647,7 @@ class Test_implementedByFallback(unittest.TestCase): foo.__name__ = 'foo' spec = self._callFUT(foo) self.assertEqual(spec.__name__, - 'zope.interface.tests.test_declarations.foo') + '__tests__.tests.test_declarations.foo') self.assertIs(spec.inherit, foo) self.assertIs(foo.__implemented__, spec) self.assertIs(foo.__providedBy__, objectSpecificationDescriptor) # pylint:disable=no-member @@ -659,7 +659,7 @@ class Test_implementedByFallback(unittest.TestCase): __implemented__ = None spec = self._callFUT(Foo) self.assertEqual(spec.__name__, - 'zope.interface.tests.test_declarations.Foo') + '__tests__.tests.test_declarations.Foo') self.assertIs(spec.inherit, Foo) self.assertIs(Foo.__implemented__, spec) self.assertIsInstance(Foo.__providedBy__, ClassProvides) # pylint:disable=no-member @@ -997,7 +997,7 @@ class Test_classImplements(_ImplementsTestMixin, unittest.TestCase): from zope.interface import Interface from zope.interface import implementedBy from zope.interface import ro - from zope.interface.tests.test_ro import C3Setting + from __tests__.tests.test_ro import C3Setting class Foo(object): pass @@ -1123,7 +1123,7 @@ class Test_implementer(Test_classImplements): returned = decorator(foo) self.assertTrue(returned is foo) spec = foo.__implemented__ # pylint:disable=no-member - self.assertEqual(spec.__name__, 'zope.interface.tests.test_declarations.?') + self.assertEqual(spec.__name__, '__tests__.tests.test_declarations.?') self.assertIsNone(spec.inherit,) self.assertIs(foo.__implemented__, spec) # pylint:disable=no-member @@ -1415,17 +1415,17 @@ class TestProvidesClassRepr(unittest.TestCase): def test__repr__module_provides_typical_use(self): # as created through a ``moduleProvides()`` statement # in a module body - from zope.interface.tests import dummy + from __tests__.tests import dummy provides = dummy.__provides__ # pylint:disable=no-member self.assertEqual( repr(provides), - "directlyProvides(sys.modules['zope.interface.tests.dummy'], IDummyModule)" + "directlyProvides(sys.modules['__tests__.tests.dummy'], IDummyModule)" ) def test__repr__module_after_pickle(self): # It doesn't matter, these objects can't be pickled. import pickle - from zope.interface.tests import dummy + from __tests__.tests import dummy provides = dummy.__provides__ # pylint:disable=no-member for proto in range(pickle.HIGHEST_PROTOCOL + 1): with self.assertRaises(pickle.PicklingError): @@ -1433,7 +1433,7 @@ class TestProvidesClassRepr(unittest.TestCase): def test__repr__directlyProvides_module(self): import sys - from zope.interface.tests import dummy + from __tests__.tests import dummy from zope.interface.declarations import directlyProvides from zope.interface.declarations import alsoProvides from zope.interface.interface import InterfaceClass @@ -1450,7 +1450,7 @@ class TestProvidesClassRepr(unittest.TestCase): self.assertEqual( repr(provides), - "directlyProvides(sys.modules['zope.interface.tests.dummy'], IFoo)" + "directlyProvides(sys.modules['__tests__.tests.dummy'], IFoo)" ) alsoProvides(dummy, IBar) @@ -1458,7 +1458,7 @@ class TestProvidesClassRepr(unittest.TestCase): self.assertEqual( repr(provides), - "directlyProvides(sys.modules['zope.interface.tests.dummy'], IFoo, IBar)" + "directlyProvides(sys.modules['__tests__.tests.dummy'], IFoo, IBar)" ) # If we make this module also provide IFoo and IBar, then the repr @@ -1471,8 +1471,8 @@ class TestProvidesClassRepr(unittest.TestCase): self.assertIs(my_module.__provides__, provides) self.assertEqual( repr(provides), - "directlyProvides(('zope.interface.tests.dummy', " - "'zope.interface.tests.test_declarations'), " + "directlyProvides(('__tests__.tests.dummy', " + "'__tests__.tests.test_declarations'), " "IFoo, IBar)" ) @@ -2103,7 +2103,7 @@ class Test_moduleProvides(unittest.TestCase): from zope.interface.declarations import moduleProvides from zope.interface.interface import InterfaceClass IFoo = InterfaceClass("IFoo") - globs = {'__name__': 'zope.interface.tests.foo', + globs = {'__name__': '__tests__.tests.tests.foo', 'moduleProvides': moduleProvides, 'IFoo': IFoo} locs = {} CODE = "\n".join([ @@ -2118,7 +2118,7 @@ class Test_moduleProvides(unittest.TestCase): from zope.interface.declarations import moduleProvides from zope.interface.interface import InterfaceClass IFoo = InterfaceClass("IFoo") - globs = {'__name__': 'zope.interface.tests.foo', + globs = {'__name__': '__tests__.tests.tests.foo', 'moduleProvides': moduleProvides, 'IFoo': IFoo} locs = {} CODE = "\n".join([ @@ -2132,7 +2132,7 @@ class Test_moduleProvides(unittest.TestCase): from zope.interface.declarations import moduleProvides from zope.interface.interface import InterfaceClass IFoo = InterfaceClass("IFoo") - globs = {'__name__': 'zope.interface.tests.foo', + globs = {'__name__': '__tests__.tests.tests.foo', 'moduleProvides': moduleProvides, 'IFoo': IFoo} CODE = "\n".join([ 'moduleProvides(IFoo)', @@ -2145,7 +2145,7 @@ class Test_moduleProvides(unittest.TestCase): from zope.interface.declarations import moduleProvides from zope.interface.interface import InterfaceClass IFoo = InterfaceClass("IFoo") - globs = {'__name__': 'zope.interface.tests.foo', + globs = {'__name__': '__tests__.tests.tests.foo', 'moduleProvides': moduleProvides, 'IFoo': IFoo} CODE = "\n".join([ --- contrib/python/zope.interface/py2/zope/interface/tests/test_exceptions.py (index) +++ contrib/python/zope.interface/py2/zope/interface/tests/test_exceptions.py (working tree) @@ -36,7 +36,7 @@ class DoesNotImplementTests(unittest.TestCase): self.assertEqual( str(dni), "An object has failed to implement interface " - "zope.interface.tests.test_exceptions.IDummy: " + "__tests__.tests.test_exceptions.IDummy: " "Does not declaratively implement the interface." ) @@ -45,7 +45,7 @@ class DoesNotImplementTests(unittest.TestCase): self.assertEqual( str(dni), "The object 'candidate' has failed to implement interface " - "zope.interface.tests.test_exceptions.IDummy: " + "__tests__.tests.test_exceptions.IDummy: " "Does not declaratively implement the interface." ) @@ -65,7 +65,7 @@ class BrokenImplementationTests(unittest.TestCase): self.assertEqual( str(dni), 'An object has failed to implement interface ' - 'zope.interface.tests.test_exceptions.IDummy: ' + '__tests__.tests.test_exceptions.IDummy: ' "The 'missing' attribute was not provided.") def test___str__w_candidate(self): @@ -73,7 +73,7 @@ class BrokenImplementationTests(unittest.TestCase): self.assertEqual( str(dni), 'The object \'candidate\' has failed to implement interface ' - 'zope.interface.tests.test_exceptions.IDummy: ' + '__tests__.tests.test_exceptions.IDummy: ' "The 'missing' attribute was not provided.") @@ -161,7 +161,7 @@ class MultipleInvalidTests(unittest.TestCase): self.assertEqual( str(dni), "The object 'target' has failed to implement interface " - "zope.interface.tests.test_exceptions.IDummy:\n" + "__tests__.tests.test_exceptions.IDummy:\n" " The contract of 'aMethod' is violated because I said so\n" " Regular exception" ) @@ -177,7 +177,7 @@ class MultipleInvalidTests(unittest.TestCase): dni = self._makeOne(excs) self.assertEqual( repr(dni), - "MultipleInvalid(," + "MultipleInvalid(," " 'target'," " (BrokenMethodImplementation('aMethod', 'I said so')," " Exception('Regular', 'exception')))" --- contrib/python/zope.interface/py2/zope/interface/tests/test_interface.py (index) +++ contrib/python/zope.interface/py2/zope/interface/tests/test_interface.py (working tree) @@ -24,9 +24,9 @@ import unittest from zope.interface._compat import _skip_under_py3k -from zope.interface.tests import MissingSomeAttrs -from zope.interface.tests import OptimizationTestMixin -from zope.interface.tests import CleanUp +from __tests__.tests import MissingSomeAttrs +from __tests__.tests import OptimizationTestMixin +from __tests__.tests import CleanUp _marker = object() @@ -1036,7 +1036,7 @@ class InterfaceClassTests(unittest.TestCase): iface = self._makeOne('HashMe') self.assertEqual(hash(iface), hash((('HashMe', - 'zope.interface.tests.test_interface')))) + '__tests__.tests.test_interface')))) def test___hash___missing_required_attrs(self): class Derived(self._getTargetClass()): @@ -1076,8 +1076,8 @@ class InterfaceClassTests(unittest.TestCase): def test_comparison_with_same_named_instance_in_other_module(self): - one = self._makeOne('IName', __module__='zope.interface.tests.one') - other = self._makeOne('IName', __module__='zope.interface.tests.other') + one = self._makeOne('IName', __module__='__tests__.tests.one') + other = self._makeOne('IName', __module__='__tests__.tests.other') self.assertTrue(one < other) self.assertFalse(other < one) --- contrib/python/zope.interface/py2/zope/interface/tests/test_odd_declarations.py (index) +++ contrib/python/zope.interface/py2/zope/interface/tests/test_odd_declarations.py (working tree) @@ -18,7 +18,7 @@ classic ExtensionClass classes and instances. """ import unittest -from zope.interface.tests import odd +from . import odd from zope.interface import Interface from zope.interface import implementer from zope.interface import directlyProvides --- contrib/python/zope.interface/py2/zope/interface/tests/test_ro.py (index) +++ contrib/python/zope.interface/py2/zope/interface/tests/test_ro.py (working tree) @@ -190,197 +190,6 @@ class C3Setting(object): from zope.interface import ro setattr(ro.C3, self._setting.__name__, self._setting) -class Test_c3_ro(Test_ro): - - def setUp(self): - Test_ro.setUp(self) - from zope.testing.loggingsupport import InstalledHandler - self.log_handler = handler = InstalledHandler('zope.interface.ro') - self.addCleanup(handler.uninstall) - - def _callFUT(self, ob, **kwargs): - from zope.interface.ro import ro - return ro(ob, **kwargs) - - def test_complex_diamond(self, base=object): - # https://github.com/zopefoundation/zope.interface/issues/21 - O = base - class F(O): - pass - class E(O): - pass - class D(O): - pass - class C(D, F): - pass - class B(D, E): - pass - class A(B, C): - pass - - if hasattr(A, 'mro'): - self.assertEqual(A.mro(), self._callFUT(A)) - - return A - - def test_complex_diamond_interface(self): - from zope.interface import Interface - - IA = self.test_complex_diamond(Interface) - - self.assertEqual( - [x.__name__ for x in IA.__iro__], - ['A', 'B', 'C', 'D', 'E', 'F', 'Interface'] - ) - - def test_complex_diamond_use_legacy_argument(self): - from zope.interface import Interface - - A = self.test_complex_diamond(Interface) - legacy_A_iro = self._callFUT(A, use_legacy_ro=True) - self.assertNotEqual(A.__iro__, legacy_A_iro) - - # And logging happened as a side-effect. - self._check_handler_complex_diamond() - - def test_complex_diamond_compare_legacy_argument(self): - from zope.interface import Interface - - A = self.test_complex_diamond(Interface) - computed_A_iro = self._callFUT(A, log_changed_ro=True) - # It matches, of course, but we did log a warning. - self.assertEqual(tuple(computed_A_iro), A.__iro__) - self._check_handler_complex_diamond() - - def _check_handler_complex_diamond(self): - handler = self.log_handler - self.assertEqual(1, len(handler.records)) - record = handler.records[0] - - self.assertEqual('\n'.join(l.rstrip() for l in record.getMessage().splitlines()), """\ -Object has different legacy and C3 MROs: - Legacy RO (len=7) C3 RO (len=7; inconsistent=no) - ================================================================== - zope.interface.tests.test_ro.A zope.interface.tests.test_ro.A - zope.interface.tests.test_ro.B zope.interface.tests.test_ro.B - - zope.interface.tests.test_ro.E - zope.interface.tests.test_ro.C zope.interface.tests.test_ro.C - zope.interface.tests.test_ro.D zope.interface.tests.test_ro.D - + zope.interface.tests.test_ro.E - zope.interface.tests.test_ro.F zope.interface.tests.test_ro.F - zope.interface.Interface zope.interface.Interface""") - - def test_ExtendedPathIndex_implement_thing_implementedby_super(self): - # See https://github.com/zopefoundation/zope.interface/pull/182#issuecomment-598754056 - from zope.interface import ro - # pylint:disable=inherit-non-class - class _Based(object): - __bases__ = () - - def __init__(self, name, bases=(), attrs=None): - self.__name__ = name - self.__bases__ = bases - - def __repr__(self): - return self.__name__ - - Interface = _Based('Interface', (), {}) - - class IPluggableIndex(Interface): - pass - - class ILimitedResultIndex(IPluggableIndex): - pass - - class IQueryIndex(IPluggableIndex): - pass - - class IPathIndex(Interface): - pass - - # A parent class who implements two distinct interfaces whose - # only common ancestor is Interface. An easy case. - # @implementer(IPathIndex, IQueryIndex) - # class PathIndex(object): - # pass - obj = _Based('object') - PathIndex = _Based('PathIndex', (IPathIndex, IQueryIndex, obj)) - - # Child class that tries to put an interface the parent declares - # later ahead of the parent. - # @implementer(ILimitedResultIndex, IQueryIndex) - # class ExtendedPathIndex(PathIndex): - # pass - ExtendedPathIndex = _Based('ExtendedPathIndex', - (ILimitedResultIndex, IQueryIndex, PathIndex)) - - # We were able to resolve it, and in exactly the same way as - # the legacy RO did, even though it is inconsistent. - result = self._callFUT(ExtendedPathIndex, log_changed_ro=True, strict=False) - self.assertEqual(result, [ - ExtendedPathIndex, - ILimitedResultIndex, - PathIndex, - IPathIndex, - IQueryIndex, - IPluggableIndex, - Interface, - obj]) - - record, = self.log_handler.records - self.assertIn('used the legacy', record.getMessage()) - - with self.assertRaises(ro.InconsistentResolutionOrderError): - self._callFUT(ExtendedPathIndex, strict=True) - - def test_OSError_IOError(self): - if OSError is not IOError: - # Python 2 - self.skipTest("Requires Python 3 IOError == OSError") - from zope.interface.common import interfaces - from zope.interface import providedBy - - self.assertEqual( - list(providedBy(OSError()).flattened()), - [ - interfaces.IOSError, - interfaces.IIOError, - interfaces.IEnvironmentError, - interfaces.IStandardError, - interfaces.IException, - interfaces.Interface, - ]) - - def test_non_orderable(self): - import warnings - from zope.interface import ro - try: - # If we've already warned, we must reset that state. - del ro.__warningregistry__ - except AttributeError: - pass - - with warnings.catch_warnings(): - warnings.simplefilter('error') - with C3Setting(ro.C3.WARN_BAD_IRO, True), C3Setting(ro.C3.STRICT_IRO, False): - with self.assertRaises(ro.InconsistentResolutionOrderWarning): - super(Test_c3_ro, self).test_non_orderable() - - IOErr, _ = self._make_IOErr() - with self.assertRaises(ro.InconsistentResolutionOrderError): - self._callFUT(IOErr, strict=True) - - with C3Setting(ro.C3.TRACK_BAD_IRO, True), C3Setting(ro.C3.STRICT_IRO, False): - with warnings.catch_warnings(): - warnings.simplefilter('ignore') - self._callFUT(IOErr) - self.assertIn(IOErr, ro.C3.BAD_IROS) - - iro = self._callFUT(IOErr, strict=False) - legacy_iro = self._callFUT(IOErr, use_legacy_ro=True, strict=False) - self.assertEqual(iro, legacy_iro) - - class TestC3(unittest.TestCase): def _makeOne(self, C, strict=False, base_mros=None): from zope.interface.ro import C3 --- contrib/python/zope.interface/py2/zope/interface/tests/test_sorting.py (index) +++ contrib/python/zope.interface/py2/zope/interface/tests/test_sorting.py (working tree) @@ -41,7 +41,7 @@ class Test(unittest.TestCase): def test_w_equal_names(self): # interfaces with equal names but different modules should sort by # module name - from zope.interface.tests.m1 import I1 as m1_I1 + from .m1 import I1 as m1_I1 l = [I1, m1_I1] l.sort() self.assertEqual(l, [m1_I1, I1]) --- contrib/python/zope.interface/py2/zope/interface/tests/test_verify.py (index) +++ contrib/python/zope.interface/py2/zope/interface/tests/test_verify.py (working tree) @@ -614,14 +614,14 @@ class Test_verifyObject(Test_verifyClass): self._callFUT, ICurrent, Current) def test_module_hit(self): - from zope.interface.tests.idummy import IDummyModule - from zope.interface.tests import dummy + from .idummy import IDummyModule + from . import dummy self._callFUT(IDummyModule, dummy) def test_module_miss(self): from zope.interface import Interface - from zope.interface.tests import dummy + from . import dummy from zope.interface.exceptions import DoesNotImplement # same name, different object