summaryrefslogtreecommitdiff
path: root/coverage/testplugin.py
diff options
context:
space:
mode:
authorDavid Stanek <dstanek@dstanek.com>2010-05-21 23:40:04 -0400
committerDavid Stanek <dstanek@dstanek.com>2010-05-21 23:40:04 -0400
commit59d386b3d2551b7b09990a55cd3cb6581fe0c5f4 (patch)
tree48c902281076a67196bab65d01fb63782f4ba1c6 /coverage/testplugin.py
parentd416ec6e5be116fb42e1e5bd370f8f13cd133b2a (diff)
downloadpython-coveragepy-git-59d386b3d2551b7b09990a55cd3cb6581fe0c5f4.tar.gz
refactored the plugin's finish method to better enable filtering modules from a report
Diffstat (limited to 'coverage/testplugin.py')
-rw-r--r--coverage/testplugin.py16
1 files changed, 10 insertions, 6 deletions
diff --git a/coverage/testplugin.py b/coverage/testplugin.py
index f6857586..c93b8599 100644
--- a/coverage/testplugin.py
+++ b/coverage/testplugin.py
@@ -54,12 +54,8 @@ class CoverageTestWrapper(object):
self.coverage.stop()
self.coverage.save()
- modules = []
- if self.coverPackages:
- for name, module in sys.modules.items():
- for package in self.coverPackages:
- if module is not None and name.startswith(package):
- modules.append(module)
+ modules = [module for name, module in sys.modules.items()
+ if self._want_module(name, module)]
# Remaining actions are reporting, with some common self.options.
report_args = {
@@ -95,6 +91,14 @@ class CoverageTestWrapper(object):
return
+ def _want_module(self, name, module):
+ for package in self.coverPackages:
+ if module is not None and name.startswith(package):
+ return True
+
+ return False
+
+
options = [
optparse.Option('',
'--cover-action', action='append', default=['report'],