diff options
author | Ned Batchelder <ned@nedbatchelder.com> | 2016-07-09 19:30:07 -0400 |
---|---|---|
committer | Ned Batchelder <ned@nedbatchelder.com> | 2016-07-09 19:30:07 -0400 |
commit | 2d3759d244a5f88101e208be8c965881f227f65b (patch) | |
tree | 4ca0af03d56096c1631b3f7d1978b0a077a25b0a | |
parent | 00f842367a49bc9c0a486cabf0dd01dd36bc72aa (diff) | |
download | python-coveragepy-git-2d3759d244a5f88101e208be8c965881f227f65b.tar.gz |
Fix the check for default values of run-affecting options, and add a test
-rw-r--r-- | coverage/cmdline.py | 4 | ||||
-rw-r--r-- | tests/test_cmdline.py | 8 |
2 files changed, 11 insertions, 1 deletions
diff --git a/coverage/cmdline.py b/coverage/cmdline.py index 20d35892..1b54e863 100644 --- a/coverage/cmdline.py +++ b/coverage/cmdline.py @@ -606,7 +606,9 @@ class CoverageScript(object): # Can't set other run-affecting command line options with # multiprocessing. for opt_name in ['branch', 'include', 'omit', 'pylib', 'source', 'timid']: - if getattr(options, opt_name) != getattr(Opts, opt_name).default: + # As it happens, all of these options have no default, meaning + # they will be None if they have not been specified. + if getattr(options, opt_name) is not None: self.help_fn( "Options affecting multiprocessing must be specified " "in a configuration file." diff --git a/tests/test_cmdline.py b/tests/test_cmdline.py index f2531605..3f471b88 100644 --- a/tests/test_cmdline.py +++ b/tests/test_cmdline.py @@ -450,6 +450,14 @@ class CmdLineTest(BaseCmdLineTest): .stop() .save() """) + self.cmd_executes("run --concurrency=multiprocessing foo.py", """\ + .coverage(concurrency='multiprocessing') + .erase() + .start() + .run_python_file('foo.py', ['foo.py']) + .stop() + .save() + """) def test_bad_concurrency(self): self.command_line("run --concurrency=nothing", ret=ERR) |