summaryrefslogtreecommitdiff
path: root/coverage/cmdline.py
diff options
context:
space:
mode:
authorNed Batchelder <ned@nedbatchelder.com>2010-05-23 16:09:44 -0400
committerNed Batchelder <ned@nedbatchelder.com>2010-05-23 16:09:44 -0400
commit039345d5c311d5d55ee6c93554959fd5685a862c (patch)
treef11ae9cf490e2550d8d8072de6a1ac0bf72549d8 /coverage/cmdline.py
parent762d67689a8ddc88195cdbb0787bc3e940ddbf85 (diff)
downloadpython-coveragepy-git-039345d5c311d5d55ee6c93554959fd5685a862c.tar.gz
Omit and include are now filename patterns rather than prefixes. BACKWARD INCOMPATIBLE change.
Diffstat (limited to 'coverage/cmdline.py')
-rw-r--r--coverage/cmdline.py23
1 files changed, 17 insertions, 6 deletions
diff --git a/coverage/cmdline.py b/coverage/cmdline.py
index cb47690c..e1a447d2 100644
--- a/coverage/cmdline.py
+++ b/coverage/cmdline.py
@@ -442,10 +442,10 @@ class CoverageScript(object):
# Listify the list options.
omit = None
if options.omit:
- omit = options.omit.split(',')
+ omit = self.pattern_list(options.omit)
include = None
if options.include:
- include = options.include.split(',')
+ include = self.pattern_list(options.include)
# Do something.
self.coverage = self.covpkg.coverage(
@@ -454,8 +454,8 @@ class CoverageScript(object):
timid = options.timid,
branch = options.branch,
config_file = options.rcfile,
- omit_prefixes = omit,
- include_prefixes = include,
+ omit = omit,
+ include = include,
)
if 'debug' in options.actions:
@@ -514,8 +514,8 @@ class CoverageScript(object):
'ignore_errors': options.ignore_errors,
}
- report_args['omit_prefixes'] = omit
- report_args['include_prefixes'] = include
+ report_args['omit'] = omit
+ report_args['include'] = include
if 'report' in options.actions:
self.coverage.report(
@@ -532,6 +532,17 @@ class CoverageScript(object):
return OK
+ def pattern_list(self, s):
+ """Turn an argument into a list of patterns."""
+ if sys.platform == 'win32':
+ # When running coverage as coverage.exe, some of the behavior
+ # of the shell is emulated: wildcards are expanded into a list of
+ # filenames. So you have to single-quote patterns on the command
+ # line, but (not) helpfully, the single quotes are included in the
+ # argument, so we have to strip them off here.
+ s = s.strip("'")
+ return s.split(',')
+
HELP_TOPICS = r"""