summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--coverage/summary.py2
-rw-r--r--tests/test_summary.py19
2 files changed, 18 insertions, 3 deletions
diff --git a/coverage/summary.py b/coverage/summary.py
index 99e73974..a90803d6 100644
--- a/coverage/summary.py
+++ b/coverage/summary.py
@@ -105,7 +105,7 @@ 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(
diff --git a/tests/test_summary.py b/tests/test_summary.py
index b765f313..c85f4d25 100644
--- a/tests/test_summary.py
+++ b/tests/test_summary.py
@@ -342,13 +342,28 @@ class SummaryTest(CoverageTest):
self.assertEqual(squeezed[7],
"1 file skipped because of 'skip covered' option.")
- def test_report_skip_covered_no_data(self):
- self.make_file("main.py", "")
+ def test_report_skip_covered_all_files_covered(self):
+ self.make_file("main.py", """
+ def foo():
+ pass
+ foo()
+ """)
out = self.run_command("coverage run --branch main.py")
self.assertEqual(out, "")
report = self.report_from_command("coverage report --skip-covered")
# Name Stmts Miss Branch BrPart Cover
# -------------------------------------------
+ #
+ # 1 file skipped because of 'skip covered' option.
+ self.assertEqual(self.line_count(report), 4, report)
+ squeezed = self.squeezed_lines(report)
+ self.assertEqual(squeezed[3],
+ "1 file skipped because of 'skip covered' option.")
+
+ def test_report_skip_covered_no_data(self):
+ report = self.report_from_command("coverage report --skip-covered")
+ # Name Stmts Miss Branch BrPart Cover
+ # -------------------------------------------
# No data to report.
self.assertEqual(self.line_count(report), 3, report)
squeezed = self.squeezed_lines(report)