diff options
author | Ned Batchelder <nedbat@gmail.com> | 2015-08-15 07:42:34 -0400 |
---|---|---|
committer | Ned Batchelder <nedbat@gmail.com> | 2015-08-15 07:42:34 -0400 |
commit | 40121d5bfc8992653a530bc2dd10117d9f837d03 (patch) | |
tree | e009ec35a5edfdb38fa1a68d853afd4b1d9de91e /coverage/summary.py | |
parent | 89ae94a44a9fc5ecbfcda575f0a9db3e6922a45f (diff) | |
parent | 8a7964a2d2a4eec7fbd369aecdd6c01caa34092f (diff) | |
download | python-coveragepy-git-40121d5bfc8992653a530bc2dd10117d9f837d03.tar.gz |
Merged in garar/coverage.py (pull request #66)
Do not raise an exception for empty summary when using skip_covered.
Diffstat (limited to 'coverage/summary.py')
-rw-r--r-- | coverage/summary.py | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/coverage/summary.py b/coverage/summary.py index 46aa4f5c..a90803d6 100644 --- a/coverage/summary.py +++ b/coverage/summary.py @@ -29,6 +29,9 @@ class SummaryReporter(Reporter): max_name = max([len(fr.relative_filename()) for fr in self.file_reporters] + [5]) fmt_name = "%%- %ds " % max_name fmt_err = "%s %s: %s\n" + fmt_skip_covered = ("\n%s file%s skipped because of 'skip covered' " + "option.\n") + header = (fmt_name % "Name") + " Stmts Miss" fmt_coverage = fmt_name + "%6d %6d" if self.branches: @@ -52,6 +55,7 @@ class SummaryReporter(Reporter): outfile.write(rule) total = Numbers() + skipped_count = 0 for fr in self.file_reporters: try: @@ -63,6 +67,7 @@ class SummaryReporter(Reporter): no_missing_lines = (nums.n_missing == 0) no_missing_branches = (nums.n_partial_branches == 0) if no_missing_lines and no_missing_branches: + skipped_count += 1 continue args = (fr.relative_filename(), nums.n_statements, nums.n_missing) @@ -100,6 +105,10 @@ class SummaryReporter(Reporter): if self.config.show_missing: args += ("",) outfile.write(fmt_coverage % args) - if not total.n_files: + if not total.n_files and not skipped_count: raise CoverageException("No data to report.") + if self.config.skip_covered and skipped_count: + outfile.write( + fmt_skip_covered % (skipped_count, + 's' if skipped_count > 1 else '')) return total.n_statements and total.pc_covered |