summaryrefslogtreecommitdiff
path: root/src/zope/interface/tests
diff options
context:
space:
mode:
authorJason Madden <jamadden@gmail.com>2017-06-14 09:45:49 -0500
committerJason Madden <jamadden@gmail.com>2017-06-14 09:45:49 -0500
commit3a1a264e6dc116c620153d2b691d5668dfaee9a4 (patch)
tree2e6d6c39cc32b8aacf5e47252723a15f2e55e37b /src/zope/interface/tests
parentbf0565350d8973f8ba260d0824678248d053de11 (diff)
downloadzope-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.py2
-rw-r--r--src/zope/interface/tests/odd.py2
-rw-r--r--src/zope/interface/tests/test_adapter.py6
-rw-r--r--src/zope/interface/tests/test_declarations.py33
-rw-r--r--src/zope/interface/tests/test_exceptions.py11
-rw-r--r--src/zope/interface/tests/test_interface.py23
-rw-r--r--src/zope/interface/tests/test_odd_declarations.py2
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))