From: Dmitry Shachnev Date: Wed, 29 Jun 2016 13:15:16 +0300 Subject: [PATCH] Make coverage plugin compatible with Coverage.py 4.1 According to the Coverage.py 4.1 changelog: - The `Coverage.report` function had two parameters with non-None defaults, which have been changed. `show_missing` used to default to True, but now defaults to None. If you had been calling `Coverage.report` without specifying `show_missing`, you'll need to explicitly set it to True to keep the same behavior. Without that option, four tests in nose fail: - test_coverage_plugin.TestCoverageMinPercentagePlugin - test_coverage_plugin.TestCoverageMinPercentageSinglePackagePlugin - test_coverage_plugin.TestCoverageMinPercentageSinglePackageWithBranchesPlugin - test_coverage_plugin.TestCoveragePlugin Patch-Source: https://github.com/nose-devs/nose/pull/1004 --- a/nose/plugins/cover.py +++ b/nose/plugins/cover.py @@ -187,7 +187,7 @@ for name, module in sys.modules.items() if self.wantModuleCoverage(name, module)] log.debug("Coverage report will cover modules: %s", modules) - self.coverInstance.report(modules, file=stream) + self.coverInstance.report(modules, file=stream, show_missing=True) import coverage if self.coverHtmlDir: @@ -207,7 +207,7 @@ # make sure we have minimum required coverage if self.coverMinPercentage: f = StringIO.StringIO() - self.coverInstance.report(modules, file=f) + self.coverInstance.report(modules, file=f, show_missing=True) multiPackageRe = (r'-------\s\w+\s+\d+\s+\d+(?:\s+\d+\s+\d+)?' r'\s+(\d+)%\s+\d*\s{0,1}$')