blob: 2d378cb7668778d2075cedd19a4d58c77e0d21a0 [file] [log] [blame]
[email protected]e615e9c2012-03-07 21:39:001# 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 testing.
6
tfarina78bb92f42015-01-31 00:20:487See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts
8for more details on the presubmit API built into depot_tools.
[email protected]e615e9c2012-03-07 21:39:009"""
10
Josip Sokcevic3d5cd732021-06-14 17:59:5711USE_PYTHON3 = True
12
[email protected]e615e9c2012-03-07 21:39:0013
14def CommonChecks(input_api, output_api):
Brian Sheedy75fc5152021-06-28 20:07:1315 testing_env = dict(input_api.environ)
Brian Sheedy75fc5152021-06-28 20:07:1316 testing_env.update({
Brian Sheedy20b6368e2021-07-15 00:17:1017 'PYTHONPATH': input_api.PresubmitLocalPath(),
Brian Sheedy75fc5152021-06-28 20:07:1318 'PYTHONDONTWRITEBYTECODE': '1',
19 })
20
[email protected]e615e9c2012-03-07 21:39:0021 output = []
Ilia Samsonova00835302019-04-19 17:37:5922 output.extend(input_api.canned_checks.RunUnitTestsInDirectory(
Joshua Hood7827f5f02022-03-01 16:31:0023 input_api,
24 output_api,
25 '.',
26 [r'^.+_unittest\.py$']))
Brian Sheedy75fc5152021-06-28 20:07:1327 output.extend(input_api.canned_checks.RunUnitTestsInDirectory(
28 input_api,
29 output_api,
30 input_api.os_path.join(input_api.PresubmitLocalPath(),
31 'unexpected_passes_common'),
32 [r'^.+_unittest\.py$'],
Joshua Hood330454c72022-03-09 17:59:0333 env=testing_env,
34 run_on_python3=USE_PYTHON3,
35 skip_shebang_check=True))
[email protected]e615e9c2012-03-07 21:39:0036 output.extend(input_api.canned_checks.RunPylint(
Joshua Hood7827f5f02022-03-01 16:31:0037 input_api,
38 output_api,
Joshua Hood56c673c2022-03-02 20:29:3339 files_to_skip=[r'gmock.*', r'gtest.*',
Joshua Hood330454c72022-03-09 17:59:0340 r'buildbot.*', r'merge_scripts.*', r'trigger_scripts.*',
41 r'unexpected_passes_common.*']))
Joshua Hood7827f5f02022-03-01 16:31:0042 # Pylint2.7 is run on subdirs whose presubmit checks are migrated to Python3
43 output.extend(input_api.canned_checks.RunPylint(
44 input_api,
45 output_api,
Joshua Hoodbb3cd222022-03-03 00:40:4846 files_to_check=[r'buildbot.*\.py$',
47 r'merge_scripts.*\.py$',
Joshua Hood330454c72022-03-09 17:59:0348 r'trigger_scripts.*\.py$',
49 r'unexpected_passes_common.*\.py$'],
Joshua Hood7827f5f02022-03-01 16:31:0050 version='2.7'))
51
[email protected]e615e9c2012-03-07 21:39:0052 return output
53
54
55def CheckChangeOnUpload(input_api, output_api):
56 return CommonChecks(input_api, output_api)
57
58
59def CheckChangeOnCommit(input_api, output_api):
60 return CommonChecks(input_api, output_api)