15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Copyright (c) 2012 The Chromium Authors. All rights reserved.
25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Use of this source code is governed by a BSD-style license that can be
35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# found in the LICENSE file.
45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)"""Top-level presubmit script for checkperms.
65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts for
85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)details on the presubmit API built into gcl.
95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)"""
105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)def CommonChecks(input_api, output_api):
135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  output = []
145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  output.extend(input_api.canned_checks.RunPylint(input_api, output_api))
155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  # Run it like if it were a unit test.
165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  output.extend(
175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      input_api.canned_checks.RunUnitTests(
185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)          input_api, output_api, ['./checkperms.py']))
195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  return output
205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)def CheckChangeOnUpload(input_api, output_api):
235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  return CommonChecks(input_api, output_api)
245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)def CheckChangeOnCommit(input_api, output_api):
275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  return CommonChecks(input_api, output_api)
28