Refactor duplicate code for calling into media controls
[WebKit-https.git] / Websites / perf.webkit.org / tools / run-tests.py
1 #!/usr/bin/python
2
3 import os
4 import subprocess
5 import sys
6
7
8 def main():
9     tools_dir = os.path.dirname(__file__)
10     root_dir = os.path.abspath(os.path.join(tools_dir, '..'))
11     node_modules_dir = os.path.join(root_dir, 'node_modules')
12
13     if not os.path.exists(node_modules_dir):
14         os.makedirs(node_modules_dir)
15     packages = ['mocha', 'pg', 'form-data']
16     for package_name in packages:
17         target_dir = os.path.join(node_modules_dir, package_name)
18         if not os.path.isdir(target_dir):
19             subprocess.call(['npm', 'install', package_name], cwd=node_modules_dir)
20
21     mocha_path = os.path.join(node_modules_dir, 'mocha/bin/mocha')
22     test_paths = sys.argv[1:] or ['unit-tests', 'server-tests']
23     return subprocess.call([mocha_path] + test_paths)
24
25 if __name__ == "__main__":
26     main()