From a19a21d715b9ae5cc8239cfcc5084aff549b4d83 Mon Sep 17 00:00:00 2001 From: Matt Martz Date: Wed, 28 Mar 2018 18:42:57 -0500 Subject: [PATCH] Add --include and --omit options to ansible-test coverage report (#38061) * Support --include and --omit with ansible-test coverage report * Code format change --- test/runner/lib/config.py | 2 ++ test/runner/lib/cover.py | 6 ++++++ test/runner/test.py | 9 +++++++++ 3 files changed, 17 insertions(+) diff --git a/test/runner/lib/config.py b/test/runner/lib/config.py index 3b422d274ca..c86f9c4afd6 100644 --- a/test/runner/lib/config.py +++ b/test/runner/lib/config.py @@ -246,3 +246,5 @@ class CoverageReportConfig(CoverageConfig): super(CoverageReportConfig, self).__init__(args) self.show_missing = args.show_missing # type: bool + self.include = args.include # type: str + self.omit = args.omit # type: str diff --git a/test/runner/lib/cover.py b/test/runner/lib/cover.py index 27bc6068c98..fca629aacbd 100644 --- a/test/runner/lib/cover.py +++ b/test/runner/lib/cover.py @@ -154,6 +154,12 @@ def command_coverage_report(args): if args.show_missing: options.append('--show-missing') + if args.include: + options.extend(['--include', args.include]) + + if args.omit: + options.extend(['--omit', args.omit]) + env = common_environment() env.update(dict(COVERAGE_FILE=output_file)) run_command(args, env=env, cmd=['coverage', 'report'] + options) diff --git a/test/runner/test.py b/test/runner/test.py index 79f4f0ff29c..7fe39dfc0aa 100755 --- a/test/runner/test.py +++ b/test/runner/test.py @@ -397,6 +397,15 @@ def parse_args(): coverage_report.add_argument('--show-missing', action='store_true', help='show line numbers of statements not executed') + coverage_report.add_argument('--include', + metavar='PAT1,PAT2,...', + help='include only files whose paths match one of these ' + 'patterns. Accepts shell-style wildcards, which must be ' + 'quoted.') + coverage_report.add_argument('--omit', + metavar='PAT1,PAT2,...', + help='omit files whose paths match one of these patterns. ' + 'Accepts shell-style wildcards, which must be quoted.') add_extra_coverage_options(coverage_report)