Make "--pdb" imply "--dist no"

Co-authored-by: Bruno Oliveira <nicoddemus@gmail.com>
This commit is contained in:
Adam Johnson
2020-07-25 00:07:42 +01:00
committed by GitHub
parent 467ac33d0b
commit b524317863
3 changed files with 11 additions and 7 deletions

View File

@@ -0,0 +1 @@
Make ``--pdb`` imply ``--dist no``, as the two options cannot really work together at the moment.

View File

@@ -191,7 +191,11 @@ def pytest_configure(config):
def pytest_cmdline_main(config):
usepdb = config.getoption("usepdb", False) # a core option
if isinstance(config.option.numprocesses, AutoInt):
config.option.numprocesses = 0 if usepdb else int(config.option.numprocesses)
if usepdb:
config.option.numprocesses = 0
config.option.dist = "no"
else:
config.option.numprocesses = int(config.option.numprocesses)
if config.option.numprocesses:
if config.option.dist == "no":
@@ -203,12 +207,10 @@ def pytest_cmdline_main(config):
if config.option.distload:
config.option.dist = "load"
val = config.getvalue
if not val("collectonly"):
if val("dist") != "no":
if usepdb:
raise pytest.UsageError(
"--pdb is incompatible with distributing tests; try using -n0 or -nauto."
) # noqa: E501
if not val("collectonly") and val("dist") != "no" and usepdb:
raise pytest.UsageError(
"--pdb is incompatible with distributing tests; try using -n0 or -nauto."
) # noqa: E501
# -------------------------------------------------------------------------

View File

@@ -57,6 +57,7 @@ def test_auto_detect_cpus(testdir, monkeypatch):
check_options(config)
assert config.getoption("usepdb")
assert config.getoption("numprocesses") == 0
assert config.getoption("dist") == "no"
monkeypatch.delattr(os, "sched_getaffinity", raising=False)
monkeypatch.setenv("TRAVIS", "true")