summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.coveragerc1
-rw-r--r--src/zope/component/eventtesting.py11
-rw-r--r--src/zope/component/hookable.py1
-rw-r--r--src/zope/component/tests/__init__.py2
-rw-r--r--src/zope/component/tests/test__declaration.py8
-rw-r--r--src/zope/component/tests/test_persistentregistry.py13
-rw-r--r--tox.ini14
7 files changed, 29 insertions, 21 deletions
diff --git a/.coveragerc b/.coveragerc
index d65f848..ebda314 100644
--- a/.coveragerc
+++ b/.coveragerc
@@ -5,6 +5,7 @@ omit =
src/zope/component/standalonetests.py
# Not used
src/zope/component/hookable.py
+ src/zope/component/eventtesting.py
[report]
exclude_lines =
diff --git a/src/zope/component/eventtesting.py b/src/zope/component/eventtesting.py
index 0e0b757..229c56e 100644
--- a/src/zope/component/eventtesting.py
+++ b/src/zope/component/eventtesting.py
@@ -13,6 +13,7 @@
##############################################################################
"""Placeless Test Setup
"""
+
from zope.component import provideHandler
from zope.component.event import objectEventNotify
from zope.component.registry import dispatchUtilityRegistrationEvent
@@ -22,12 +23,12 @@ from zope.component.registry import (
from zope.component.registry import dispatchHandlerRegistrationEvent
try:
from zope.testing.cleanup import addCleanUp
-except ImportError: #pragma NO COVER
+except ImportError:
def addCleanUp(x):
pass
events = []
-def getEvents(event_type=None, filter=None): #pragma NO COVER going aaway
+def getEvents(event_type=None, filter=None):
r = []
for event in events:
if event_type is not None and not event_type.providedBy(event):
@@ -38,11 +39,11 @@ def getEvents(event_type=None, filter=None): #pragma NO COVER going aaway
return r
-def clearEvents(): #pragma NO COVER going aaway
+def clearEvents():
del events[:]
addCleanUp(clearEvents)
-class PlacelessSetup: #pragma NO COVER going aaway
+class PlacelessSetup:
def setUp(self):
provideHandler(objectEventNotify)
@@ -52,5 +53,5 @@ class PlacelessSetup: #pragma NO COVER going aaway
provideHandler(dispatchHandlerRegistrationEvent)
provideHandler(events.append, (None,))
-def setUp(test=None): #pragma NO COVER going aaway
+def setUp(test=None):
PlacelessSetup().setUp()
diff --git a/src/zope/component/hookable.py b/src/zope/component/hookable.py
index 2a0b5c0..275c4b6 100644
--- a/src/zope/component/hookable.py
+++ b/src/zope/component/hookable.py
@@ -14,5 +14,6 @@
"""
This module is deprecated. Prefer to use zope.hookable.hookable.
"""
+# pragma: no cover
import zope.deprecation
zope.deprecation.moved("zope.hookable", "4.5")
diff --git a/src/zope/component/tests/__init__.py b/src/zope/component/tests/__init__.py
index 69e979e..bc508bb 100644
--- a/src/zope/component/tests/__init__.py
+++ b/src/zope/component/tests/__init__.py
@@ -3,7 +3,7 @@ import unittest
def skipIfNoSecurity(testfunc):
try:
import zope.security
- except ImportError:
+ except ImportError: # pragma: no cover
return unittest.skip("zope.security not installed")(testfunc)
return testfunc
diff --git a/src/zope/component/tests/test__declaration.py b/src/zope/component/tests/test__declaration.py
index 470cab0..1db841d 100644
--- a/src/zope/component/tests/test__declaration.py
+++ b/src/zope/component/tests/test__declaration.py
@@ -131,13 +131,9 @@ class Test_adapts(unittest.TestCase):
])
with warnings.catch_warnings(record=True) as log:
warnings.resetwarnings()
- try:
+ with self.assertRaises(TypeError):
exec(CODE, globs, locs)
- except TypeError:
- if not PYTHON3:
- self.assertEqual(len(log), 0) # no longer warn
- else:
- self.fail("Didn't raise TypeError")
+ self.assertEqual(len(log), 0) # no longer warn
def test_called_once_from_class(self):
from zope.component._declaration import adapts
diff --git a/src/zope/component/tests/test_persistentregistry.py b/src/zope/component/tests/test_persistentregistry.py
index 7ae79a3..9002e30 100644
--- a/src/zope/component/tests/test_persistentregistry.py
+++ b/src/zope/component/tests/test_persistentregistry.py
@@ -19,7 +19,7 @@ import unittest
def skipIfNoPersistent(testfunc):
try:
import persistent
- except ImportError:
+ except ImportError: # pragma: no cover
return unittest.skip("persistent not installed")(testfunc)
return testfunc
@@ -40,13 +40,13 @@ class PersistentAdapterRegistryTests(unittest.TestCase):
def __init__(self, jar):
self._jar = jar
self._mru = []
- def mru(self, oid):
- self._mru.append(oid)
+ # mru(oid) is only called in pure-Python runs
+ self.mru = self._mru.append
def new_ghost(self, oid, obj):
obj._p_jar = self._jar
obj._p_oid = oid
def update_object_size_estimation(self, oid, size):
- return
+ "This is only called in pure-Python runs"
return _Cache(jar)
@@ -160,7 +160,4 @@ class PersistentComponentsTests(unittest.TestCase):
PersistentList))
def _makeOctets(s):
- import sys
- if sys.version_info < (3,):
- return bytes(s)
- return bytes(s, 'ascii') #pragma NO COVERAGE
+ return bytes(s) if bytes is str else bytes(s, 'ascii')
diff --git a/tox.ini b/tox.ini
index aa4ae39..a32f101 100644
--- a/tox.ini
+++ b/tox.ini
@@ -2,7 +2,7 @@
envlist =
# Jython support pending 2.7 support, due 2012-07-15 or so. See:
# http://fwierzbicki.blogspot.com/2012/03/adconion-to-fund-jython-27.html
- py27,py27-minimal,pypy,py34,py35,py36,py37,pypy3,docs
+ py27,py27-minimal,pypy,py34,py35,py36,py37,pypy3,docs,coverage
[mindeps]
deps =
@@ -58,3 +58,15 @@ commands =
deps =
{[fulldeps]deps}
.[docs]
+
+[testenv:coverage]
+basepython =
+ python3.6
+usedevelop = true
+commands =
+ coverage run -m zope.testrunner --test-path=src
+ coverage run -a -m sphinx.cmd.build -b doctest -d docs/_build/doctrees docs docs/_build/doctest
+ coverage report --fail-under=100
+deps =
+ {[testenv]deps}
+ coverage