diff options
author | holger krekel <holger@merlinux.eu> | 2013-10-14 12:04:28 +0200 |
---|---|---|
committer | holger krekel <holger@merlinux.eu> | 2013-10-14 12:04:28 +0200 |
commit | f914825d783da586e20ad77e1b7347b97a4510ea (patch) | |
tree | e167c5d12d9c07bc45ea9b7251e0e2c674eef9da /tests | |
parent | 7328cbbd408cd94c704ba6a932051ecce5751ba3 (diff) | |
download | tox-f914825d783da586e20ad77e1b7347b97a4510ea.tar.gz |
fix parsing/escaping bugs on windows32
Diffstat (limited to 'tests')
-rw-r--r-- | tests/test_config.py | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/test_config.py b/tests/test_config.py index e117ca0..3776788 100644 --- a/tests/test_config.py +++ b/tests/test_config.py @@ -243,6 +243,16 @@ class TestIniParser: assert x == [["cmd1", "with space", "grr"], ["cmd2", "grr"]] + def test_argvlist_windows_escaping(self, tmpdir, newconfig): + config = newconfig(""" + [section] + comm = py.test {posargs} + """) + reader = IniReader(config._cfg) + reader.addsubstitutions([r"hello\this"]) + argv = reader.getargv("section", "comm") + assert argv == ["py.test", "hello\\this"] + def test_argvlist_multiline(self, tmpdir, newconfig): config = newconfig(""" [section] @@ -1077,3 +1087,15 @@ class TestCommandParser: p = CommandParser(cmd) parsed = list(p.words()) assert parsed == ['nosetests', ' ', '-v', ' ', '-a', ' ', '!deferred', ' ', '--with-doctest', ' ', '[]'] + +def test_argv_unquote_single_args(): + argv = ["hello", '"hello2"', "'hello3'"] + newargv = unquote_single_args(argv) + assert newargv == ["hello", "hello2", "hello3"] + +def test_argv_roundrobin(): + argv = ["hello", "this\\that"] + assert string2argv(argv2string(argv)) == argv + argv = ["hello world"] + assert string2argv(argv2string(argv)) == argv + |