config: fix consider_preparse with missing argument to -p

This is only required after/with 415899d4 - otherwise argparse ensures
there is an argument already.
This commit is contained in:
Daniel Hahler 2019-03-21 04:38:11 +01:00
parent 15ef168821
commit ea2c6b8a88
2 changed files with 7 additions and 1 deletions

View File

@ -481,7 +481,10 @@ class PytestPluginManager(PluginManager):
i += 1
if isinstance(opt, six.string_types):
if opt == "-p":
parg = args[i]
try:
parg = args[i]
except IndexError:
return
i += 1
elif opt.startswith("-p"):
parg = opt[2:]

View File

@ -313,6 +313,9 @@ class TestPytestPluginManagerBootstrapming(object):
assert '"hello123"' in excinfo.value.args[0]
pytestpm.consider_preparse(["-pno:hello123"])
# Handles -p without following arg (when used without argparse).
pytestpm.consider_preparse(["-p"])
def test_plugin_prevent_register(self, pytestpm):
pytestpm.consider_preparse(["xyz", "-p", "no:abc"])
l1 = pytestpm.get_plugins()