aboutsummaryrefslogtreecommitdiffstats
path: root/python/servo/testing_commands.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/servo/testing_commands.py')
-rw-r--r--python/servo/testing_commands.py29
1 files changed, 14 insertions, 15 deletions
diff --git a/python/servo/testing_commands.py b/python/servo/testing_commands.py
index 0a944eb2795..8735a234e12 100644
--- a/python/servo/testing_commands.py
+++ b/python/servo/testing_commands.py
@@ -53,23 +53,22 @@ class MachCommands(CommandBase):
return 1
test_dirs = [
- (path.join("tests", "content"), "test-content"),
- (path.join("tests", "wpt"), "test-wpt"),
+ # path, mach test command, optional flag for path argument
+ (path.join("tests", "content"), "test-content", None),
+ (path.join("tests", "wpt"), "test-wpt", None),
+ (path.join("tests", "ref"), "test-ref", ["--name"]),
]
- if path.join("tests", "ref") in maybe_path:
- # test-ref is the outcast here in that it does not accept
- # individual files as arguments unless passed through with --name
- args = [mach_command, "test-ref",
- "--name", maybe_path] + params[1:]
+ for test_dir, test_name, path_flag in test_dirs:
+ if not path_flag:
+ path_arg = []
+ if test_dir in maybe_path:
+ args = ([mach_command, test_name] + path_flag +
+ [maybe_path] + params[1:])
+ break
else:
- for test_dir, test_name in test_dirs:
- if test_dir in maybe_path:
- args = [mach_command, test_name, maybe_path] + params[1:]
- break
- else:
- print("%s is not a valid test file or directory" % maybe_path)
- return 1
+ print("%s is not a valid test file or directory" % maybe_path)
+ return 1
return subprocess.call(args, env=self.build_env())
@@ -105,7 +104,7 @@ class MachCommands(CommandBase):
def cargo_test(component):
return 0 != subprocess.call(
- ["cargo", "test", "-p", component], env=self.build_env())
+ ["cargo", "test", "-p", component] + test_name, env=self.build_env())
for component in os.listdir("components"):
ret = ret or cargo_test(component)