1*d9f75844SAndroid Build Coastguard Worker#!/usr/bin/env vpython3 2*d9f75844SAndroid Build Coastguard Worker 3*d9f75844SAndroid Build Coastguard Worker# Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. 4*d9f75844SAndroid Build Coastguard Worker# 5*d9f75844SAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license 6*d9f75844SAndroid Build Coastguard Worker# that can be found in the LICENSE file in the root of the source 7*d9f75844SAndroid Build Coastguard Worker# tree. An additional intellectual property rights grant can be found 8*d9f75844SAndroid Build Coastguard Worker# in the file PATENTS. All contributing project authors may 9*d9f75844SAndroid Build Coastguard Worker# be found in the AUTHORS file in the root of the source tree. 10*d9f75844SAndroid Build Coastguard Worker 11*d9f75844SAndroid Build Coastguard Worker 12*d9f75844SAndroid Build Coastguard Worker# Runs PRESUBMIT.py in py3 mode by git cl presubmit. 13*d9f75844SAndroid Build Coastguard WorkerUSE_PYTHON3 = True 14*d9f75844SAndroid Build Coastguard Worker 15*d9f75844SAndroid Build Coastguard Worker 16*d9f75844SAndroid Build Coastguard Workerdef _CommonChecks(input_api, output_api): 17*d9f75844SAndroid Build Coastguard Worker results = [] 18*d9f75844SAndroid Build Coastguard Worker 19*d9f75844SAndroid Build Coastguard Worker # Run the MB unittests. 20*d9f75844SAndroid Build Coastguard Worker results.extend( 21*d9f75844SAndroid Build Coastguard Worker input_api.canned_checks.RunUnitTestsInDirectory(input_api, 22*d9f75844SAndroid Build Coastguard Worker output_api, 23*d9f75844SAndroid Build Coastguard Worker '.', 24*d9f75844SAndroid Build Coastguard Worker [r'^.+_unittest\.py$'], 25*d9f75844SAndroid Build Coastguard Worker skip_shebang_check=False, 26*d9f75844SAndroid Build Coastguard Worker run_on_python2=False)) 27*d9f75844SAndroid Build Coastguard Worker 28*d9f75844SAndroid Build Coastguard Worker # Validate the format of the mb_config.pyl file. 29*d9f75844SAndroid Build Coastguard Worker cmd = [input_api.python3_executable, 'mb.py', 'validate'] 30*d9f75844SAndroid Build Coastguard Worker kwargs = {'cwd': input_api.PresubmitLocalPath()} 31*d9f75844SAndroid Build Coastguard Worker results.extend(input_api.RunTests([ 32*d9f75844SAndroid Build Coastguard Worker input_api.Command(name='mb_validate', 33*d9f75844SAndroid Build Coastguard Worker cmd=cmd, kwargs=kwargs, 34*d9f75844SAndroid Build Coastguard Worker message=output_api.PresubmitError)])) 35*d9f75844SAndroid Build Coastguard Worker 36*d9f75844SAndroid Build Coastguard Worker results.extend( 37*d9f75844SAndroid Build Coastguard Worker input_api.canned_checks.CheckLongLines( 38*d9f75844SAndroid Build Coastguard Worker input_api, 39*d9f75844SAndroid Build Coastguard Worker output_api, 40*d9f75844SAndroid Build Coastguard Worker maxlen=80, 41*d9f75844SAndroid Build Coastguard Worker source_file_filter=lambda x: 'mb_config.pyl' in x.LocalPath())) 42*d9f75844SAndroid Build Coastguard Worker 43*d9f75844SAndroid Build Coastguard Worker return results 44*d9f75844SAndroid Build Coastguard Worker 45*d9f75844SAndroid Build Coastguard Worker 46*d9f75844SAndroid Build Coastguard Workerdef CheckChangeOnUpload(input_api, output_api): 47*d9f75844SAndroid Build Coastguard Worker return _CommonChecks(input_api, output_api) 48*d9f75844SAndroid Build Coastguard Worker 49*d9f75844SAndroid Build Coastguard Worker 50*d9f75844SAndroid Build Coastguard Workerdef CheckChangeOnCommit(input_api, output_api): 51*d9f75844SAndroid Build Coastguard Worker return _CommonChecks(input_api, output_api) 52