# HG changeset patch -- Bitbucket.org # Project pytest-coverage # URL http://bitbucket.org/prologic/pytest-coverage/overview/ # User prologic # Date 1267131698 -36000 # Node ID 55a0426c39999fb4f88470e4cd1c3593e2e9c16d # Parent 951db18315b48dd8c5bf545f09bd1d0aa9cfda6d Added 'coverage' funcarg to our plugin object DoCoverage.
--- a/pytest_coverage.py +++ b/pytest_coverage.py @@ -41,20 +41,25 @@ def pytest_configure(config): config.pluginmanager.register(DoCoverage(config), "coverage") class DoCoverage: + def __init__(self, config): self.config = config - import coverage - self.cov = coverage.coverage() - self.cov.use_cache(0) # Do not cache any of the coverage.py stuff - self.cov.start() + + self._coverage = coverage() + self._coverage.use_cache(False) + self._coverage.start() + + def pytest_funcarg__coverage(self, request): + return self._coverage def pytest_terminal_summary(self, terminalreporter): + self._coverage.stop() + self._coverage.save() + config = terminalreporter.config tw = terminalreporter._tw tw.sep('-', 'coverage') tw.line('Processing Coverage...') - self.cov.stop() - self.cov.save() # Get the configurations config = terminalreporter.config @@ -87,8 +92,9 @@ class DoCoverage: # report_args['omit_prefixes'] = omit_prefixes if report_type == 'report': - self.cov.report(show_missing=show_missing, file=tw, **report_args) + self._coverage.report(show_missing=show_missing, file=tw, + **report_args) elif report_type == 'annotate': - self.cov.annotate(directory=directory, **report_type) + self._coverage.annotate(directory=directory, **report_type) elif report_type == 'html': - self.cov.html_report(directory=directory, **report_args) + self._coverage.html_report(directory=directory, **report_args) _______________________________________________ py-svn mailing list py-svn@codespeak.net http://codespeak.net/mailman/listinfo/py-svn