1cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)# Copyright 2014 The Chromium Authors. All rights reserved.
2cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)# Use of this source code is governed by a BSD-style license that can be
3cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)# found in the LICENSE file.
4cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
5cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)"""binary_size presubmit script
6cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
7cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts
8cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)for more details about the presubmit API built into gcl.
9cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)"""
10cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
11cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)def CommonChecks(input_api, output_api):
12cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)  output = []
13cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)  output.extend(input_api.canned_checks.RunPylint(input_api, output_api))
14cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)  output.extend(
15cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      input_api.canned_checks.RunUnitTestsInDirectory(
16cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)          input_api, output_api,
17cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)          input_api.PresubmitLocalPath(),
18cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)          whitelist=[r'.+_unittest\.py$']))
19cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
20cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)  if input_api.is_committing:
21cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)    output.extend(input_api.canned_checks.PanProjectChecks(input_api,
22cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)                                                           output_api,
23cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)                                                           owners_check=False))
24cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)  return output
25cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
26cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
27cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)def CheckChangeOnUpload(input_api, output_api):
28cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)  return CommonChecks(input_api, output_api)
29cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
30cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
31cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)def CheckChangeOnCommit(input_api, output_api):
32cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)  return CommonChecks(input_api, output_api)
33