From ab68d51eda8979441400688f26ceffddf25120c8 Mon Sep 17 00:00:00 2001 From: Matt Brubeck Date: Thu, 1 Oct 2015 08:54:18 -0700 Subject: Fixes for `mach test-ref` argument handling * Change parameter from `name` to `include`. This is consistent with other test suites, and also fixes a bug in `mach test` caused by a conflicting keyword parameter in `Registrar.dispatch`. * Allow any number of `include` arguments. --- python/servo/testing_commands.py | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) (limited to 'python/servo/testing_commands.py') diff --git a/python/servo/testing_commands.py b/python/servo/testing_commands.py index e4c36236bd0..f6159406666 100644 --- a/python/servo/testing_commands.py +++ b/python/servo/testing_commands.py @@ -83,7 +83,7 @@ class MachCommands(CommandBase): ("tidy", {}), ("ref", {"kwargs": {"kind": render_mode}, "paths": [path.abspath(path.join("tests", "ref"))], - "include_arg": "name"}), + "include_arg": "include"}), ("wpt", {"kwargs": {"release": release}, "paths": [path.abspath(path.join("tests", "wpt", "web-platform-tests")), path.abspath(path.join("tests", "wpt", "mozilla"))], @@ -189,14 +189,14 @@ class MachCommands(CommandBase): help=HELP_RENDER_MODE) @CommandArgument('--release', '-r', action='store_true', help='Run with a release build of Servo') - @CommandArgument('--name', default=None, + @CommandArgument('--include', default=None, nargs='+', help="Only run tests that match this pattern. If the " "path to the ref test directory is included, it " "will automatically be trimmed out.") @CommandArgument( 'servo_params', default=None, nargs=argparse.REMAINDER, help="Command-line arguments to be passed through to Servo") - def test_ref(self, kind=DEFAULT_RENDER_MODE, name=None, servo_params=None, + def test_ref(self, kind=DEFAULT_RENDER_MODE, include=None, servo_params=None, release=False): self.ensure_bootstrapped() self.ensure_built_tests(release=release) @@ -210,17 +210,17 @@ class MachCommands(CommandBase): for k in kinds: print("Running %s reftests..." % k) test_args = [k, test_path] - if name is not None: - maybe_path = path.normpath(name) + if include is not None: ref_path = path.join("tests", "ref") - - # Check to see if we were passed something leading with the - # path to the ref test directory, and trim it so that reftest - # knows how to filter it. - if ref_path in maybe_path: - test_args.append(path.relpath(maybe_path, ref_path)) - else: - test_args.append(name) + for name in include: + # Check to see if we were passed something leading with the + # path to the ref test directory, and trim it so that reftest + # knows how to filter it. + maybe_path = path.normpath(name) + if ref_path in maybe_path: + test_args.append(path.relpath(maybe_path, ref_path)) + else: + test_args.append(name) if servo_params is not None: test_args += ["--"] + servo_params ret = self.run_test("reftest", test_args, release=release) -- cgit v1.2.3