From 907af0e7e261bd9f14d013b1b1b65cb0cf319e27 Mon Sep 17 00:00:00 2001 From: Dan Wandschneider Date: Wed, 8 Jun 2016 19:51:55 -0400 Subject: Make report's 'sort' option available only via the configuration file, not available on the command line. --- coverage/cmdline.py | 12 +----------- coverage/config.py | 1 + coverage/control.py | 5 ++--- doc/config.rst | 2 ++ tests/test_cmdline.py | 7 +------ 5 files changed, 7 insertions(+), 20 deletions(-) diff --git a/coverage/cmdline.py b/coverage/cmdline.py index b2803c5..e2b79fe 100644 --- a/coverage/cmdline.py +++ b/coverage/cmdline.py @@ -82,14 +82,6 @@ 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,...", @@ -343,7 +335,6 @@ CMDS = { Opts.include, Opts.omit, Opts.show_missing, - Opts.sort, Opts.skip_covered, ] + GLOBAL_ARGS, usage="[options] [modules]", @@ -513,8 +504,7 @@ class CoverageScript(object): if options.action == "report": total = self.coverage.report( show_missing=options.show_missing, - skip_covered=options.skip_covered, sort_name=options.sort, - **report_args) + skip_covered=options.skip_covered, **report_args) elif options.action == "annotate": self.coverage.annotate( directory=options.directory, **report_args) diff --git a/coverage/config.py b/coverage/config.py index cd66697..f7b7eb6 100644 --- a/coverage/config.py +++ b/coverage/config.py @@ -290,6 +290,7 @@ class CoverageConfig(object): ('precision', 'report:precision', 'int'), ('show_missing', 'report:show_missing', 'boolean'), ('skip_covered', 'report:skip_covered', 'boolean'), + ('sort', 'report:sort'), # [html] ('extra_css', 'html:extra_css'), diff --git a/coverage/control.py b/coverage/control.py index d41181e..6f49685 100644 --- a/coverage/control.py +++ b/coverage/control.py @@ -943,7 +943,7 @@ class Coverage(object): def report( self, morfs=None, show_missing=None, ignore_errors=None, file=None, # pylint: disable=redefined-builtin - omit=None, include=None, skip_covered=None, sort_name=None + omit=None, include=None, skip_covered=None ): """Write a summary report to `file`. @@ -960,8 +960,7 @@ class Coverage(object): self.get_data() self.config.from_args( ignore_errors=ignore_errors, omit=omit, include=include, - show_missing=show_missing, skip_covered=skip_covered, - sort=sort_name, + show_missing=show_missing, skip_covered=skip_covered ) reporter = SummaryReporter(self, self.config) return reporter.report(morfs, outfile=file) diff --git a/doc/config.rst b/doc/config.rst index f5876e7..800f6c8 100644 --- a/doc/config.rst +++ b/doc/config.rst @@ -218,6 +218,8 @@ missing lines. See :ref:`cmd_summary` for more information. ``skip_covered`` (boolean, default False): Don't include files in the report that are 100% covered files. See :ref:`cmd_summary` for more information. +``sort`` (string, default Name, allowed values: Name, Stmts, Miss, Cover): +Sort report by the named column. .. _config_html: diff --git a/tests/test_cmdline.py b/tests/test_cmdline.py index 1fefb02..8e2840b 100644 --- a/tests/test_cmdline.py +++ b/tests/test_cmdline.py @@ -43,7 +43,7 @@ class BaseCmdLineTest(CoverageTest): ) defaults.report( ignore_errors=None, include=None, omit=None, morfs=[], - show_missing=None, skip_covered=None, sort_name=None + show_missing=None, skip_covered=None ) defaults.xml_report( ignore_errors=None, include=None, omit=None, morfs=[], outfile=None, @@ -341,11 +341,6 @@ class CmdLineTest(BaseCmdLineTest): .load() .report(skip_covered=True) """) - self.cmd_executes("report --sort Stmts", """\ - .coverage() - .load() - .report(sort_name='Stmts') - """) def test_run(self): # coverage run [-p] [-L] [--timid] MODULE.py [ARG1 ARG2 ...] -- cgit v1.2.1