summaryrefslogtreecommitdiff
path: root/coverage/summary.py
diff options
context:
space:
mode:
Diffstat (limited to 'coverage/summary.py')
-rw-r--r--coverage/summary.py16
1 files changed, 10 insertions, 6 deletions
diff --git a/coverage/summary.py b/coverage/summary.py
index 5b8c903f..03270c04 100644
--- a/coverage/summary.py
+++ b/coverage/summary.py
@@ -1,10 +1,13 @@
+# Licensed under the Apache License: http://www.apache.org/licenses/LICENSE-2.0
+# For details: https://bitbucket.org/ned/coveragepy/src/default/NOTICE.txt
+
"""Summary reporting"""
import sys
from coverage.report import Reporter
from coverage.results import Numbers
-from coverage.misc import NotPython
+from coverage.misc import NotPython, CoverageException
class SummaryReporter(Reporter):
@@ -23,7 +26,7 @@ class SummaryReporter(Reporter):
self.find_file_reporters(morfs)
# Prepare the formatting strings
- max_name = max([len(fr.name) for fr in self.file_reporters] + [5])
+ 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"
header = (fmt_name % "Name") + " Stmts Miss"
@@ -65,7 +68,7 @@ class SummaryReporter(Reporter):
if no_missing_lines and no_missing_branches:
continue
- args = (fr.name, nums.n_statements, nums.n_missing)
+ args = (fr.relative_filename(), nums.n_statements, nums.n_missing)
if self.branches:
args += (nums.n_branches, nums.n_partial_branches)
args += (nums.pc_covered_str,)
@@ -87,7 +90,7 @@ class SummaryReporter(Reporter):
if typ is NotPython and not fr.should_be_python():
report_it = False
if report_it:
- outfile.write(fmt_err % (fr.name, typ.__name__, msg))
+ outfile.write(fmt_err % (fr.relative_filename(), typ.__name__, msg))
if total.n_files > 1:
outfile.write(rule)
@@ -98,5 +101,6 @@ class SummaryReporter(Reporter):
if self.config.show_missing:
args += ("",)
outfile.write(fmt_coverage % args)
-
- return total.pc_covered
+ if not total.n_files:
+ raise CoverageException("No data to report.")
+ return total.n_statements and total.pc_covered