| # Copyright 2019 The Chromium Authors |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| def CheckChangeOnUpload(input_api, output_api): |
| return _CommonChecks(input_api, output_api) |
| |
| |
| def CheckChangeOnCommit(input_api, output_api): |
| return _CommonChecks(input_api, output_api) |
| |
| |
| def _CheckSvgsOptimized(input_api, output_api): |
| results = [] |
| try: |
| import sys |
| old_sys_path = sys.path[:] |
| cwd = input_api.PresubmitLocalPath() |
| sys.path += [input_api.os_path.join(cwd, '..', 'tools')] |
| from resources import svgo_presubmit |
| results += svgo_presubmit.CheckOptimized(input_api, output_api) |
| finally: |
| sys.path = old_sys_path |
| return results |
| |
| |
| def _CheckWebDevStyle(input_api, output_api): |
| results = [] |
| try: |
| import sys |
| old_sys_path = sys.path[:] |
| cwd = input_api.PresubmitLocalPath() |
| sys.path += [input_api.os_path.join(cwd, '..', 'tools')] |
| from web_dev_style import presubmit_support |
| results += presubmit_support.CheckStyle(input_api, output_api) |
| finally: |
| sys.path = old_sys_path |
| return results |
| |
| |
| def _CheckNotFatalUntilAdoption(input_api, output_api): |
| results = [] |
| try: |
| import sys |
| old_sys_path = sys.path[:] |
| sys.path.append(input_api.change.RepositoryRoot()) |
| from build.ios import presubmit_support |
| |
| # Filter components to only those consumed by //ios/web_view. |
| # Using NotFatalUntil annotations within web_view code is crucial, |
| # given that this code is used by embedders which need time to |
| # find and resolve issues before crashing CHECKS are added. |
| def PathFilter(affected_file): |
| path = affected_file.UnixLocalPath() |
| return (path.startswith('components/autofill/core/') or |
| path.startswith('components/autofill/ios/') or |
| path.startswith('components/password_manager/core/') or |
| path.startswith('components/password_manager/ios/')) |
| |
| results.extend(presubmit_support.CheckNotFatalUntilAdoption( |
| input_api, output_api, path_filter=PathFilter)) |
| finally: |
| sys.path = old_sys_path |
| return results |
| |
| |
| def _CommonChecks(input_api, output_api): |
| results = [] |
| results += _CheckSvgsOptimized(input_api, output_api) |
| results += _CheckWebDevStyle(input_api, output_api) |
| results += _CheckNotFatalUntilAdoption(input_api, output_api) |
| results += input_api.canned_checks.CheckPatchFormatted(input_api, output_api, |
| check_js=True, |
| check_python=False) |
| return results |