From 50535ae9b23ce336fcc84e11c3546ab75c1e55b8 Mon Sep 17 00:00:00 2001 From: Dan Wandschneider Date: Wed, 8 Jun 2016 19:51:55 -0400 Subject: Issue 199: Sort text report. Allows sorting of the text report based on: Name, Stmts, Miss, Cover Tested on Mac with Python 2.7.11 and Python 3.5 Help message for the new option is: python -m coverage report -h ... --sort=SORT Sort report by a column. Valid values are: Name, Stmts, Miss, Cover. ... --- coverage/cmdline.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'coverage/cmdline.py') diff --git a/coverage/cmdline.py b/coverage/cmdline.py index e2b79fe..b2803c5 100644 --- a/coverage/cmdline.py +++ b/coverage/cmdline.py @@ -82,6 +82,14 @@ class Opts(object): '--skip-covered', action='store_true', help="Skip files with 100% coverage.", ) + SORT_CHOICES = ('Name', 'Stmts', 'Miss', 'Cover') + sort = optparse.make_option( + '--sort', action='store', choices=SORT_CHOICES, + help=( + "Sort report by a column. " + "Valid values are: %s." + ) % ", ".join(SORT_CHOICES) + ) omit = optparse.make_option( '', '--omit', action='store', metavar="PAT1,PAT2,...", @@ -335,6 +343,7 @@ CMDS = { Opts.include, Opts.omit, Opts.show_missing, + Opts.sort, Opts.skip_covered, ] + GLOBAL_ARGS, usage="[options] [modules]", @@ -504,7 +513,8 @@ class CoverageScript(object): if options.action == "report": total = self.coverage.report( show_missing=options.show_missing, - skip_covered=options.skip_covered, **report_args) + skip_covered=options.skip_covered, sort_name=options.sort, + **report_args) elif options.action == "annotate": self.coverage.annotate( directory=options.directory, **report_args) -- cgit v1.2.1