• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright 2015 The Chromium Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5import sys
6
7
8def CheckChangeOnUpload(input_api, output_api):
9  return _CheckChange(input_api, output_api)
10
11
12def CheckChangeOnCommit(input_api, output_api):
13  return _CheckChange(input_api, output_api)
14
15
16def _CheckChange(input_api, output_api):
17  results = []
18
19  original_sys_path = sys.path
20  try:
21    sys.path += [input_api.PresubmitLocalPath()]
22    from tracing_build import check_gypi
23    error = check_gypi.GypiCheck()
24    if error:
25      results.append(output_api.PresubmitError(error))
26  finally:
27    sys.path = original_sys_path
28
29  results += input_api.RunTests(input_api.canned_checks.GetPylint(
30      input_api, output_api, extra_paths_list=_GetPathsToPrepend(input_api),
31      pylintrc='../pylintrc'))
32
33  return results
34
35
36def _GetPathsToPrepend(input_api):
37  project_dir = input_api.PresubmitLocalPath()
38  catapult_dir = input_api.os_path.join(project_dir, '..')
39  return [
40      project_dir,
41
42      input_api.os_path.join(catapult_dir, 'third_party', 'mock'),
43  ]
44