Skip to content

Commit

Permalink
Merge pull request pytest-dev#1523 from MengJueM/master
Browse files Browse the repository at this point in the history
  • Loading branch information
RonnyPfannschmidt committed Apr 20, 2016
2 parents a986b8f + f51c34e commit 6d661ac
Show file tree
Hide file tree
Showing 4 changed files with 15 additions and 3 deletions.
1 change: 1 addition & 0 deletions AUTHORS
Original file line number Diff line number Diff line change
Expand Up @@ -87,3 +87,4 @@ Russel Winder
Ben Webb
Alexei Kozlenok
Cal Leeming
Feng Ma
3 changes: 2 additions & 1 deletion CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,8 @@

*

*
* Fix win32 path issue when puttinging custom config file with absolute path
in ``pytest.main("-c your_absolute_path")``.

* Fix maximum recursion depth detection when raised error class is not aware
of unicode/encoded bytes.
Expand Down
2 changes: 1 addition & 1 deletion _pytest/config.py
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ def _prepareconfig(args=None, plugins=None):
elif not isinstance(args, (tuple, list)):
if not isinstance(args, str):
raise ValueError("not a string or argument list: %r" % (args,))
args = shlex.split(args)
args = shlex.split(args, posix=sys.platform == "win32")
config = get_config()
pluginmanager = config.pluginmanager
try:
Expand Down
12 changes: 11 additions & 1 deletion testing/test_config.py
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ def test_confcutdir(self, testdir):
""")
result = testdir.inline_run("--confcutdir=.")
assert result.ret == 0

class TestConfigCmdlineParsing:
def test_parsing_again_fails(self, testdir):
config = testdir.parseconfig()
Expand All @@ -101,6 +101,16 @@ def pytest_addoption(parser):
config = testdir.parseconfig("-c", "custom.cfg")
assert config.getini("custom") == "1"

def test_absolute_win32_path(self, testdir):
temp_cfg_file = testdir.makefile(".cfg", custom="""
[pytest]
addopts = --version
""")
from os.path import normpath
temp_cfg_file = normpath(str(temp_cfg_file))
ret = pytest.main("-c " + temp_cfg_file)
assert ret == _pytest.main.EXIT_OK

class TestConfigAPI:
def test_config_trace(self, testdir):
config = testdir.parseconfig()
Expand Down

0 comments on commit 6d661ac

Please sign in to comment.