1#!/usr/bin/env python
2# -*- coding: utf-8 -*-
3"""Script to run the tests."""
4
5from __future__ import print_function
6
7import sys
8import unittest
9
10# Change PYTHONPATH to include dependencies.
11sys.path.insert(0, '.')
12
13import utils.dependencies  # pylint: disable=wrong-import-position
14
15
16if __name__ == '__main__':
17  print('Using Python version {0!s}'.format(sys.version))
18
19  fail_unless_has_test_file = '--fail-unless-has-test-file' in sys.argv
20  setattr(unittest, 'fail_unless_has_test_file', fail_unless_has_test_file)
21  if fail_unless_has_test_file:
22    # Remove --fail-unless-has-test-file otherwise it will conflict with
23    # the argparse tests.
24    sys.argv.remove('--fail-unless-has-test-file')
25
26  dependency_helper = utils.dependencies.DependencyHelper()
27
28  if not dependency_helper.CheckTestDependencies():
29    sys.exit(1)
30
31  test_suite = unittest.TestLoader().discover('tests', pattern='*.py')
32  test_results = unittest.TextTestRunner(verbosity=2).run(test_suite)
33  if not test_results.wasSuccessful():
34    sys.exit(1)
35