Skip to content

Commit 87a4e67

Browse files
authored
Merge pull request #932 from asottile/no_skip_covered
Add --no-skip-covered to allow negation of --skip-covered
2 parents b59a741 + f7dd884 commit 87a4e67

File tree

2 files changed

+36
-0
lines changed

2 files changed

+36
-0
lines changed

coverage/cmdline.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,10 @@ class Opts(object):
9393
'--skip-covered', action='store_true',
9494
help="Skip files with 100% coverage.",
9595
)
96+
no_skip_covered = optparse.make_option(
97+
'--no-skip-covered', action='store_false', dest='skip_covered',
98+
help="Disable --skip-covered.",
99+
)
96100
skip_empty = optparse.make_option(
97101
'--skip-empty', action='store_true',
98102
help="Skip files with no code.",
@@ -369,6 +373,7 @@ def get_prog_name(self):
369373
Opts.precision,
370374
Opts.show_contexts,
371375
Opts.skip_covered,
376+
Opts.no_skip_covered,
372377
Opts.skip_empty,
373378
Opts.title,
374379
] + GLOBAL_ARGS,
@@ -407,6 +412,7 @@ def get_prog_name(self):
407412
Opts.precision,
408413
Opts.show_missing,
409414
Opts.skip_covered,
415+
Opts.no_skip_covered,
410416
Opts.skip_empty,
411417
] + GLOBAL_ARGS,
412418
usage="[options] [modules]",

tests/test_summary.py

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -300,6 +300,36 @@ def not_covered():
300300
self.assertEqual(squeezed[6], "1 file skipped due to complete coverage.")
301301
self.assertEqual(self.last_command_status, 0)
302302

303+
def test_report_no_skip_covered(self):
304+
self.make_file("main.py", """
305+
import not_covered
306+
307+
def normal():
308+
print("z")
309+
normal()
310+
""")
311+
self.make_file("not_covered.py", """
312+
def not_covered():
313+
print("n")
314+
""")
315+
self.omit_site_packages()
316+
out = self.run_command("coverage run main.py")
317+
self.assertEqual(out, "z\n")
318+
report = self.report_from_command("coverage report --skip-covered --no-skip-covered")
319+
320+
# Name Stmts Miss Cover
321+
# ------------------------------------
322+
# main.py 4 0 100%
323+
# not_covered.py 2 1 50%
324+
# ------------------------------------
325+
# TOTAL 6 1 83%
326+
327+
self.assertEqual(self.line_count(report), 6, report)
328+
squeezed = self.squeezed_lines(report)
329+
self.assertEqual(squeezed[2], "main.py 4 0 100%")
330+
self.assertEqual(squeezed[3], "not_covered.py 2 1 50%")
331+
self.assertEqual(squeezed[5], "TOTAL 6 1 83%")
332+
303333
def test_report_skip_covered_branches(self):
304334
self.make_file("main.py", """
305335
import not_covered, covered

0 commit comments

Comments
 (0)