#!/usr/bin/env python
# Copyright (c) 2015 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import os
import sys

_CATAPULT_PATH = os.path.abspath(
    os.path.join(os.path.dirname(__file__), '..', '..'))

_PY_UTILS_PATH = os.path.abspath(
    os.path.join(_CATAPULT_PATH, 'common', 'py_utils'))


def _RunTestsOrDie(top_level_dir):
  exit_code = run_with_typ.Run(top_level_dir, path=[_PY_UTILS_PATH])
  if exit_code:
    sys.exit(exit_code)


def _AddToPathIfNeeded(path):
  if path not in sys.path:
    sys.path.insert(0, path)


if __name__ == '__main__':
  _AddToPathIfNeeded(_CATAPULT_PATH)

  from hooks import install
  if '--no-install-hooks' in sys.argv:
    sys.argv.remove('--no-install-hooks')
  else:
    install.InstallHooks()

  from catapult_build import run_with_typ
  _RunTestsOrDie(_PY_UTILS_PATH)
  sys.exit(0)