an ugly patch to fix all but the most important part =/
This commit is contained in:
parent
616d8251f3
commit
49d46a0059
|
@ -879,7 +879,7 @@ class Config(object):
|
||||||
def fromdictargs(cls, option_dict, args):
|
def fromdictargs(cls, option_dict, args):
|
||||||
""" constructor useable for subprocesses. """
|
""" constructor useable for subprocesses. """
|
||||||
config = get_config()
|
config = get_config()
|
||||||
config._preparse(args, addopts=False)
|
config.parse(args, addopts=False)
|
||||||
config.option.__dict__.update(option_dict)
|
config.option.__dict__.update(option_dict)
|
||||||
for x in config.option.plugins:
|
for x in config.option.plugins:
|
||||||
config.pluginmanager.consider_pluginarg(x)
|
config.pluginmanager.consider_pluginarg(x)
|
||||||
|
@ -947,14 +947,14 @@ class Config(object):
|
||||||
self.inicfg.config.path, self.inicfg.lineof('minversion'),
|
self.inicfg.config.path, self.inicfg.lineof('minversion'),
|
||||||
minver, pytest.__version__))
|
minver, pytest.__version__))
|
||||||
|
|
||||||
def parse(self, args):
|
def parse(self, args, addopts=True):
|
||||||
# parse given cmdline arguments into this config object.
|
# parse given cmdline arguments into this config object.
|
||||||
assert not hasattr(self, 'args'), (
|
assert not hasattr(self, 'args'), (
|
||||||
"can only parse cmdline args at most once per Config object")
|
"can only parse cmdline args at most once per Config object")
|
||||||
self._origargs = args
|
self._origargs = args
|
||||||
self.hook.pytest_addhooks.call_historic(
|
self.hook.pytest_addhooks.call_historic(
|
||||||
kwargs=dict(pluginmanager=self.pluginmanager))
|
kwargs=dict(pluginmanager=self.pluginmanager))
|
||||||
self._preparse(args)
|
self._preparse(args, addopts=addopts)
|
||||||
# XXX deprecated hook:
|
# XXX deprecated hook:
|
||||||
self.hook.pytest_cmdline_preparse(config=self, args=args)
|
self.hook.pytest_cmdline_preparse(config=self, args=args)
|
||||||
args = self._parser.parse_setoption(args, self.option)
|
args = self._parser.parse_setoption(args, self.option)
|
||||||
|
|
|
@ -266,7 +266,6 @@ class TestConfigAPI:
|
||||||
|
|
||||||
|
|
||||||
class TestConfigFromdictargs:
|
class TestConfigFromdictargs:
|
||||||
@pytest.mark.xfail(reason="fromdictargs currently broken #1060")
|
|
||||||
def test_basic_behavior(self):
|
def test_basic_behavior(self):
|
||||||
from _pytest.config import Config
|
from _pytest.config import Config
|
||||||
option_dict = {
|
option_dict = {
|
||||||
|
@ -282,7 +281,6 @@ class TestConfigFromdictargs:
|
||||||
assert config.option.foo == 'bar'
|
assert config.option.foo == 'bar'
|
||||||
assert config.args == args
|
assert config.args == args
|
||||||
|
|
||||||
@pytest.mark.xfail(reason="fromdictargs currently broken #1060")
|
|
||||||
def test_origargs(self):
|
def test_origargs(self):
|
||||||
"""Show that fromdictargs can handle args in their "orig" format"""
|
"""Show that fromdictargs can handle args in their "orig" format"""
|
||||||
from _pytest.config import Config
|
from _pytest.config import Config
|
||||||
|
|
Loading…
Reference in New Issue