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