mesontest: Use shlex.split for parsing the wrapper

Allows people to pass arguments with spaces in them. Do this using
argparse itself instead of doing an isinstance later.
pull/1421/head
Nirbheek Chauhan 8 years ago
parent 95248f0f26
commit 62c7dcf32d
  1. 8
      mesontest.py

@ -16,6 +16,7 @@
# A tool to run tests in many different ways.
import shlex
import subprocess, sys, os, argparse
import pickle
from mesonbuild import build
@ -61,7 +62,7 @@ parser.add_argument('--gdb', default=False, dest='gdb', action='store_true',
help='Run test under gdb.')
parser.add_argument('--list', default=False, dest='list', action='store_true',
help='List available tests.')
parser.add_argument('--wrapper', default=None, dest='wrapper',
parser.add_argument('--wrapper', default=None, dest='wrapper', type=shlex.split,
help='wrapper to run tests with (e.g. Valgrind)')
parser.add_argument('-C', default='.', dest='wd',
help='directory to cd into before running')
@ -421,10 +422,7 @@ TIMEOUT: %4d
if self.options.repeat > 1:
wrap += ['-ex', 'run', '-ex', 'quit']
elif self.options.wrapper:
if isinstance(self.options.wrapper, str):
wrap = self.options.wrapper.split()
else:
wrap = self.options.wrapper
wrap += self.options.wrapper
assert(isinstance(wrap, list))
return wrap

Loading…
Cancel
Save