diff options
| author | Jason Madden <jamadden@gmail.com> | 2017-06-14 09:45:49 -0500 |
|---|---|---|
| committer | Jason Madden <jamadden@gmail.com> | 2017-06-14 09:45:49 -0500 |
| commit | 3a1a264e6dc116c620153d2b691d5668dfaee9a4 (patch) | |
| tree | 2e6d6c39cc32b8aacf5e47252723a15f2e55e37b /src/zope/interface/tests | |
| parent | bf0565350d8973f8ba260d0824678248d053de11 (diff) | |
| download | zope-interface-combined-coverage.tar.gz | |
Enable combined coverage reports under tox and branch coveragecombined-coverage
Fixes #91
Remove many (or most) now-redundant 'pragma: no cover'.
A few minor test changes to get full branch coverage.
Diffstat (limited to 'src/zope/interface/tests')
| -rw-r--r-- | src/zope/interface/tests/advisory_testing.py | 2 | ||||
| -rw-r--r-- | src/zope/interface/tests/odd.py | 2 | ||||
| -rw-r--r-- | src/zope/interface/tests/test_adapter.py | 6 | ||||
| -rw-r--r-- | src/zope/interface/tests/test_declarations.py | 33 | ||||
| -rw-r--r-- | src/zope/interface/tests/test_exceptions.py | 11 | ||||
| -rw-r--r-- | src/zope/interface/tests/test_interface.py | 23 | ||||
| -rw-r--r-- | src/zope/interface/tests/test_odd_declarations.py | 2 |
7 files changed, 42 insertions, 37 deletions
diff --git a/src/zope/interface/tests/advisory_testing.py b/src/zope/interface/tests/advisory_testing.py index 30dadc5..b159e93 100644 --- a/src/zope/interface/tests/advisory_testing.py +++ b/src/zope/interface/tests/advisory_testing.py @@ -32,7 +32,7 @@ try: class ClassicClass: __metaclass__ = ClassType classLevelFrameInfo = getFrameInfo(sys._getframe()) -except ImportError: # pragma: no cover (Py3, this module may not even be imported) +except ImportError: ClassicClass = None class NewStyleClass: diff --git a/src/zope/interface/tests/odd.py b/src/zope/interface/tests/odd.py index 7789a76..74c6158 100644 --- a/src/zope/interface/tests/odd.py +++ b/src/zope/interface/tests/odd.py @@ -72,7 +72,7 @@ class MetaMetaClass(type): if name == '__class__': return cls # Under Python 3.6, __prepare__ gets requested - return type.__getattribute__(cls, name) # pragma: no cover + return type.__getattribute__(cls, name) class MetaClass(object): diff --git a/src/zope/interface/tests/test_adapter.py b/src/zope/interface/tests/test_adapter.py index 24c3334..7420e1c 100644 --- a/src/zope/interface/tests/test_adapter.py +++ b/src/zope/interface/tests/test_adapter.py @@ -558,7 +558,7 @@ class LookupBaseTests(LookupBaseFallbackTests): from zope.interface.adapter import LookupBaseFallback try: import zope.interface._zope_interface_coptimizations - except ImportError: # pragma: no cover (pypy) + except ImportError: self.assertIs(self._getTargetClass(), LookupBaseFallback) else: self.assertIsNot(self._getTargetClass(), LookupBaseFallback) @@ -729,7 +729,7 @@ class VerifyingBaseTests(VerifyingBaseFallbackTests): from zope.interface.adapter import VerifyingBaseFallback try: import zope.interface._zope_interface_coptimizations - except ImportError: # pragma: no cover (pypy) + except ImportError: self.assertIs(self._getTargetClass(), VerifyingBaseFallback) else: self.assertIsNot(self._getTargetClass(), VerifyingBaseFallback) @@ -1390,7 +1390,7 @@ class Test_utils(unittest.TestCase): STR = b'str' if sys.version_info[0] < 3: self.assertEqual(_normalize_name(STR), unicode(STR)) - else: # pragma: no cover (tox runs coverage on Python 2) + else: self.assertEqual(_normalize_name(STR), str(STR, 'ascii')) def test__normalize_name_unicode(self): diff --git a/src/zope/interface/tests/test_declarations.py b/src/zope/interface/tests/test_declarations.py index 05b09a5..43f95c8 100644 --- a/src/zope/interface/tests/test_declarations.py +++ b/src/zope/interface/tests/test_declarations.py @@ -31,7 +31,7 @@ class _Py3ClassAdvice(object): exec(code, globs, locs) self.assertEqual(len(log), 0) # no longer warn return True - else: # pragma: no cover (tox runs coverage on Python 2) + else: try: exec(code, globs, locs) except TypeError: @@ -339,10 +339,14 @@ class Test_implementedByFallback(unittest.TestCase): def test_dictless_wo_existing_Implements_cant_assign___implemented__(self): class Foo(object): - def _get_impl(self): return None - def _set_impl(self, val): raise TypeError + def _get_impl(self): + raise NotImplementedError() + def _set_impl(self, val): + raise TypeError __implemented__ = property(_get_impl, _set_impl) - def __call__(self): pass #act like a factory + def __call__(self): + # act like a factory + raise NotImplementedError() foo = Foo() self.assertRaises(TypeError, self._callFUT, foo) @@ -479,7 +483,7 @@ class Test_implementedBy(Test_implementedByFallback): from zope.interface.declarations import implementedBy try: import zope.interface._zope_interface_coptimizations - except ImportError: # pragma: no cover (pypy) + except ImportError: self.assertIs(implementedBy, implementedByFallback) else: self.assertIsNot(implementedBy, implementedByFallback) @@ -685,7 +689,8 @@ class Test_implementer_only(unittest.TestCase): from zope.interface.interface import InterfaceClass IFoo = InterfaceClass('IFoo') decorator = self._makeOne(IFoo) - def _function(): pass + def _function(): + raise NotImplementedError() self.assertRaises(ValueError, decorator, _function) def test_method(self): @@ -693,7 +698,8 @@ class Test_implementer_only(unittest.TestCase): IFoo = InterfaceClass('IFoo') decorator = self._makeOne(IFoo) class Bar: - def _method(): pass + def _method(): + raise NotImplementedError() self.assertRaises(ValueError, decorator, Bar._method) def test_oldstyle_class(self): @@ -752,9 +758,8 @@ class Test_implementsOnly(unittest.TestCase, _Py3ClassAdvice): warnings.resetwarnings() try: exec(CODE, globs, locs) - except TypeError: # pragma: no cover (tox runs coverage on Python 2) - if not PYTHON3: - raise + except TypeError: + self.assertTrue(PYTHON3, "Must be Python 3") else: if PYTHON3: self.fail("Didn't raise TypeError") @@ -1130,7 +1135,7 @@ class ClassProvidesBaseTests(ClassProvidesBaseFallbackTests): from zope.interface.declarations import ClassProvidesBaseFallback try: import zope.interface._zope_interface_coptimizations - except ImportError: # pragma: no cover (pypy) + except ImportError: self.assertIs(self._getTargetClass(), ClassProvidesBaseFallback) else: self.assertIsNot(self._getTargetClass(), ClassProvidesBaseFallback) @@ -1441,7 +1446,7 @@ class Test_getObjectSpecification(Test_getObjectSpecificationFallback): from zope.interface.declarations import getObjectSpecification try: import zope.interface._zope_interface_coptimizations - except ImportError: # pragma: no cover (pypy) + except ImportError: self.assertIs(getObjectSpecification, getObjectSpecificationFallback) else: @@ -1538,7 +1543,7 @@ class Test_providedBy(Test_providedByFallback): from zope.interface.declarations import providedBy try: import zope.interface._zope_interface_coptimizations - except ImportError: # pragma: no cover (pypy) + except ImportError: self.assertIs(providedBy, providedByFallback) else: self.assertIsNot(providedBy, providedByFallback) @@ -1609,7 +1614,7 @@ class ObjectSpecificationDescriptorTests( ObjectSpecificationDescriptorFallback) try: import zope.interface._zope_interface_coptimizations - except ImportError: # pragma: no cover (pypy) + except ImportError: self.assertIs(self._getTargetClass(), ObjectSpecificationDescriptorFallback) else: diff --git a/src/zope/interface/tests/test_exceptions.py b/src/zope/interface/tests/test_exceptions.py index 94009f6..ae73f9c 100644 --- a/src/zope/interface/tests/test_exceptions.py +++ b/src/zope/interface/tests/test_exceptions.py @@ -27,9 +27,8 @@ class DoesNotImplementTests(unittest.TestCase): from zope.interface.exceptions import DoesNotImplement return DoesNotImplement - def _makeOne(self, iface=None): - if iface is None: - iface = _makeIface() + def _makeOne(self): + iface = _makeIface() return self._getTargetClass()(iface) def test___str__(self): @@ -45,9 +44,8 @@ class BrokenImplementationTests(unittest.TestCase): from zope.interface.exceptions import BrokenImplementation return BrokenImplementation - def _makeOne(self, iface=None, name='missing'): - if iface is None: - iface = _makeIface() + def _makeOne(self, name='missing'): + iface = _makeIface() return self._getTargetClass()(iface, name) def test___str__(self): @@ -72,4 +70,3 @@ class BrokenMethodImplementationTests(unittest.TestCase): self.assertEqual(str(dni), 'The implementation of aMethod violates its contract\n' ' because I said so.\n ') - diff --git a/src/zope/interface/tests/test_interface.py b/src/zope/interface/tests/test_interface.py index f14c76f..58ed808 100644 --- a/src/zope/interface/tests/test_interface.py +++ b/src/zope/interface/tests/test_interface.py @@ -16,6 +16,8 @@ # pylint:disable=protected-access import unittest +from zope.interface._compat import _skip_under_py3k + _marker = object() @@ -214,7 +216,7 @@ class SpecificationBaseTests(unittest.TestCase): from zope.interface.interface import SpecificationBasePy try: import zope.interface._zope_interface_coptimizations - except ImportError: # pragma: no cover (pypy) + except ImportError: self.assertIs(self._getTargetClass(), SpecificationBasePy) else: self.assertIsNot(self._getTargetClass(), SpecificationBasePy) @@ -291,7 +293,7 @@ class InterfaceBaseTests(unittest.TestCase): from zope.interface.interface import InterfaceBasePy try: import zope.interface._zope_interface_coptimizations - except ImportError: # pragma: no cover (pypy) + except ImportError: self.assertIs(self._getTargetClass(), InterfaceBasePy) else: self.assertIsNot(self._getTargetClass(), InterfaceBasePy) @@ -1677,21 +1679,22 @@ class InterfaceTests(unittest.TestCase): self.assertEqual(I.__doc__, "") self.assertEqual(list(I), ['__doc__']) + @_skip_under_py3k def testIssue228(self): # Test for http://collector.zope.org/Zope3-dev/228 # Old style classes don't have a '__class__' attribute + # No old style classes in Python 3, so the test becomes moot. import sys - if sys.version[0] < '3': - # No old style classes in Python 3, so the test becomes moot. - from zope.interface import Interface - class I(Interface): - "xxx" + from zope.interface import Interface + + class I(Interface): + "xxx" - class OldStyle: - __providedBy__ = None + class OldStyle: + __providedBy__ = None - self.assertRaises(AttributeError, I.providedBy, OldStyle) + self.assertRaises(AttributeError, I.providedBy, OldStyle) def test_invariant_as_decorator(self): from zope.interface import Interface diff --git a/src/zope/interface/tests/test_odd_declarations.py b/src/zope/interface/tests/test_odd_declarations.py index 5480730..01fa6c6 100644 --- a/src/zope/interface/tests/test_odd_declarations.py +++ b/src/zope/interface/tests/test_odd_declarations.py @@ -258,7 +258,7 @@ class Test(unittest.TestCase): c.c import sys - if sys.version[0] == '2': # This test only makes sense under Python 2.x + if sys.version_info[0] < 3: # This test only makes sense under Python 2.x from types import ClassType assert not isinstance(C, (type, ClassType)) |
