blob: 3f1d809e6da10ba8a4b3bbb10b1134b62f5a5f99 [file] [log] [blame]
# Copyright (c) 2011 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.
"""Top-level presubmit script for commit-queue.
See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts for
details on the presubmit API built into gcl.
"""
def CommonChecks(input_api, output_api):
import sys
def join(*args):
return input_api.os_path.join(input_api.PresubmitLocalPath(), *args)
output = []
sys_path_backup = sys.path
try:
# Note that this won't work on the commit queue.
sys.path = [join('..', 'commit-queue-internal')] + sys.path
black_list = list(input_api.DEFAULT_BLACK_LIST) + [
r'^workdir/.*',
r'^tests/.+',
]
output.extend(input_api.canned_checks.RunPylint(
input_api, output_api, black_list=black_list))
sys.path = [join('tests')] + sys.path
black_list = list(input_api.DEFAULT_BLACK_LIST) + [
r'^workdir/.*',
]
white_list = [ r'tests/.+\.py$' ]
output.extend(input_api.canned_checks.RunPylint(
input_api, output_api, black_list=black_list, white_list=white_list))
finally:
sys.path = sys_path_backup
output.extend(input_api.canned_checks.RunUnitTestsInDirectory(
input_api, output_api, 'tests', whitelist=[r'.*_test\.py$']))
return output
def CheckChangeOnUpload(input_api, output_api):
return CommonChecks(input_api, output_api)
def CheckChangeOnCommit(input_api, output_api):
return CommonChecks(input_api, output_api)