| # Copyright 2012 The Chromium Authors |
| # 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 testing. |
| |
| See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts |
| for more details on the presubmit API built into depot_tools. |
| """ |
| |
| USE_PYTHON3 = True |
| |
| |
| def CommonChecks(input_api, output_api): |
| testing_env = dict(input_api.environ) |
| testing_path = input_api.PresubmitLocalPath() |
| # TODO(crbug.com/1358733): This is temporary till gpu code in |
| # flake_suppressor_commonis moved to gpu dir. |
| # Only common code will reside under /testing. |
| gpu_test_path = input_api.os_path.join( |
| input_api.PresubmitLocalPath(), '..', 'content', 'test', 'gpu') |
| testing_env.update({ |
| 'PYTHONPATH': input_api.os_path.pathsep.join( |
| [testing_path, gpu_test_path]), |
| 'PYTHONDONTWRITEBYTECODE': '1', |
| }) |
| |
| output = [] |
| output.extend(input_api.canned_checks.RunUnitTestsInDirectory( |
| input_api, |
| output_api, |
| '.', |
| [r'^.+_unittest\.py$'], |
| run_on_python2=False, |
| run_on_python3=USE_PYTHON3, |
| skip_shebang_check=True)) |
| output.extend(input_api.canned_checks.RunUnitTestsInDirectory( |
| input_api, |
| output_api, |
| input_api.os_path.join(input_api.PresubmitLocalPath(), |
| 'flake_suppressor_common'), |
| [r'^.+_unittest\.py$'], |
| env=testing_env, |
| run_on_python2=False, |
| run_on_python3=USE_PYTHON3, |
| skip_shebang_check=True)) |
| output.extend(input_api.canned_checks.RunUnitTestsInDirectory( |
| input_api, |
| output_api, |
| input_api.os_path.join(input_api.PresubmitLocalPath(), |
| 'unexpected_passes_common'), |
| [r'^.+_unittest\.py$'], |
| env=testing_env, |
| run_on_python2=False, |
| run_on_python3=USE_PYTHON3, |
| skip_shebang_check=True)) |
| files_to_skip = input_api.DEFAULT_FILES_TO_SKIP |
| if input_api.is_windows: |
| # These scripts don't run on Windows and should not be linted on Windows - |
| # trying to do so will lead to spurious errors. |
| files_to_skip += ('xvfb.py', '.*host_info.py') |
| output.extend(input_api.canned_checks.RunPylint( |
| input_api, |
| output_api, |
| files_to_skip=files_to_skip, |
| version='2.7')) |
| |
| 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) |