From f5b43eef1b9b9a82b24fd7fd05e78af257ed7f4d Mon Sep 17 00:00:00 2001 From: Nirbheek Chauhan Date: Thu, 23 Feb 2017 04:51:10 +0530 Subject: [PATCH] mesontest: Support passing test arguments at runtime This is especially useful with the glib testing framework where you can select which tests to run within a single test executable by pasing `-p /some/test/path` --- mesontest.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/mesontest.py b/mesontest.py index 0cccfe29f..a1708e386 100755 --- a/mesontest.py +++ b/mesontest.py @@ -90,7 +90,10 @@ parser.add_argument('-t', '--timeout-multiplier', type=float, default=None, ' more time to execute.') parser.add_argument('--setup', default=None, dest='setup', help='Which test setup to use.') -parser.add_argument('args', nargs='*') +parser.add_argument('--test-args', default=[], type=shlex.split, + help='Arguments to pass to the specified test(s) or all tests') +parser.add_argument('args', nargs='*', + help='Optional list of tests to run') class TestRun: def __init__(self, res, returncode, should_fail, duration, stdo, stde, cmd, @@ -190,7 +193,7 @@ class TestHarness: stde = None returncode = GNU_SKIP_RETURNCODE else: - cmd = wrap + cmd + test.cmd_args + cmd = wrap + cmd + test.cmd_args + self.options.test_args starttime = time.time() child_env = os.environ.copy() child_env.update(self.options.global_env.get_env(child_env))