| # 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. |
| |
| """Enforces json format. |
| |
| See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts |
| for more details on the presubmit API built into depot_tools. |
| """ |
| |
| PRESUBMIT_VERSION = '2.0.0' |
| |
| |
| def CheckFreeze(input_api, output_api): |
| return input_api.canned_checks.CheckInfraFreeze( |
| input_api, output_api, files_to_exclude=['.+/filters/.+']) |
| |
| |
| def CheckSourceSideSpecs(input_api, output_api): |
| return input_api.RunTests([ |
| input_api.Command(name='check source side specs', |
| cmd=[ |
| input_api.python3_executable, |
| 'generate_buildbot_json.py', '--check', '--verbose' |
| ], |
| kwargs={}, |
| message=output_api.PresubmitError), |
| ]) |
| |
| |
| def CheckTests(input_api, output_api): |
| for f in input_api.AffectedFiles(): |
| # If the only files changed here match //testing/buildbot/*.(pyl|json), |
| # then we can assume the unit tests are unaffected. |
| if (len(f.LocalPath().split(input_api.os_path.sep)) != 3 |
| or not f.LocalPath().endswith(('.json', '.pyl'))): |
| break |
| else: |
| return [] |
| glob = input_api.os_path.join(input_api.PresubmitLocalPath(), '*test.py') |
| tests = input_api.canned_checks.GetUnitTests(input_api, output_api, |
| input_api.glob(glob)) |
| return input_api.RunTests(tests) |
| |
| |
| def CheckJsonFiles(input_api, output_api): |
| return input_api.RunTests([ |
| input_api.Command(name='check JSON files', |
| cmd=[input_api.python3_executable, 'check.py'], |
| kwargs={}, |
| message=output_api.PresubmitError), |
| ]) |
| |
| |
| def CheckPylFilesSynced(input_api, output_api): |
| return input_api.RunTests([ |
| input_api.Command( |
| name='check-pyl-files-synced', |
| cmd=[ |
| input_api.python3_executable, |
| '../../infra/config/scripts/sync-pyl-files.py', |
| '--check', |
| ], |
| kwargs={}, |
| message=output_api.PresubmitError, |
| ), |
| ]) |