• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#!/usr/bin/env python
2# Copyright 2014 The Chromium Authors. All rights reserved.
3# Use of this source code is governed by a BSD-style license that can be
4# found in the LICENSE file.
5
6import os
7import sys
8
9_script_dir = os.path.dirname(os.path.abspath(__file__))
10sys.path.insert(0, os.path.join(_script_dir, "pylib"))
11
12from mojo_python_tests_runner import MojoPythonTestRunner
13
14
15class PythonBindingsTestRunner(MojoPythonTestRunner):
16
17  def add_custom_commandline_options(self, parser):
18    parser.add_argument('--build-dir', action='store',
19                        help='path to the build output directory')
20
21  def apply_customization(self, args):
22    if args.build_dir:
23      python_build_dir = os.path.join(args.build_dir, 'python')
24      if python_build_dir not in sys.path:
25        sys.path.append(python_build_dir)
26      python_gen_dir = os.path.join(
27          args.build_dir,
28          'gen', 'mojo', 'public', 'interfaces', 'bindings', 'tests')
29      if python_gen_dir not in sys.path:
30        sys.path.append(python_gen_dir)
31
32
33def main():
34  runner = PythonBindingsTestRunner(os.path.join('mojo', 'python', 'tests'))
35  sys.exit(runner.run())
36
37
38if __name__ == '__main__':
39  sys.exit(main())
40