Home | History | Annotate | Download | only in find_runtime_symbols
      1 # Copyright (c) 2012 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 
      5 """Top-level presubmit script for find_runtime_symbols.
      6 
      7 See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts for
      8 details on the presubmit API built into gcl.
      9 """
     10 
     11 
     12 def CommonChecks(input_api, output_api):
     13   import sys
     14   def join(*args):
     15     return input_api.os_path.join(input_api.PresubmitLocalPath(), *args)
     16 
     17   output = []
     18   sys_path_backup = sys.path
     19   try:
     20     sys.path = [
     21       join('..', 'find_runtime_symbols'),
     22     ] + sys.path
     23     output.extend(input_api.canned_checks.RunPylint(input_api, output_api))
     24   finally:
     25     sys.path = sys_path_backup
     26 
     27   output.extend(
     28       input_api.canned_checks.RunUnitTestsInDirectory(
     29           input_api, output_api,
     30           input_api.os_path.join(input_api.PresubmitLocalPath(), 'tests'),
     31           whitelist=[r'.+_test\.py$']))
     32 
     33   if input_api.is_committing:
     34     output.extend(input_api.canned_checks.PanProjectChecks(input_api,
     35                                                            output_api,
     36                                                            owners_check=False))
     37   return output
     38 
     39 
     40 def CheckChangeOnUpload(input_api, output_api):
     41   return CommonChecks(input_api, output_api)
     42 
     43 
     44 def CheckChangeOnCommit(input_api, output_api):
     45   return CommonChecks(input_api, output_api)
     46