| OLD | NEW |
| 1 # Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 """Top-level presubmit script for commit-queue. | 5 """Top-level presubmit script for commit-queue. |
| 6 | 6 |
| 7 See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts for | 7 See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts for |
| 8 details on the presubmit API built into gcl. | 8 details on the presubmit API built into gcl. |
| 9 """ | 9 """ |
| 10 | 10 |
| 11 import os | 11 import os |
| 12 | 12 |
| 13 | 13 |
| 14 def CommonChecks(input_api, output_api): | 14 def CommonChecks(input_api, output_api): |
| 15 output = [] | 15 output = [] |
| 16 black_list = list(input_api.DEFAULT_BLACK_LIST) + [ | 16 black_list = list(input_api.DEFAULT_BLACK_LIST) + [ |
| 17 r'^workdir/.*', | 17 r'^workdir/.*', |
| 18 r'^thirdparty/.*' | |
| 19 ] | 18 ] |
| 20 output.extend(input_api.canned_checks.RunPylint( | 19 output.extend(input_api.canned_checks.RunPylint( |
| 21 input_api, output_api, black_list=black_list)) | 20 input_api, output_api, black_list=black_list)) |
| 22 output.extend(RunUnittests(input_api, output_api)) | 21 output.extend(RunUnittests(input_api, output_api)) |
| 23 return output | 22 return output |
| 24 | 23 |
| 25 | 24 |
| 26 def CheckChangeOnUpload(input_api, output_api): | 25 def CheckChangeOnUpload(input_api, output_api): |
| 27 return CommonChecks(input_api, output_api) | 26 return CommonChecks(input_api, output_api) |
| 28 | 27 |
| 29 | 28 |
| 30 def CheckChangeOnCommit(input_api, output_api): | 29 def CheckChangeOnCommit(input_api, output_api): |
| 31 return CommonChecks(input_api, output_api) | 30 return CommonChecks(input_api, output_api) |
| 32 | 31 |
| 33 | 32 |
| 34 def RunUnittests(input_api, output_api): | 33 def RunUnittests(input_api, output_api): |
| 35 out = [] | 34 out = [] |
| 36 path = input_api.os_path.join(input_api.PresubmitLocalPath(), 'tests') | 35 path = input_api.os_path.join(input_api.PresubmitLocalPath(), 'tests') |
| 37 for item in os.listdir(path): | 36 for item in os.listdir(path): |
| 38 if not item.endswith('test.py'): | 37 if not item.endswith('test.py'): |
| 39 continue | 38 continue |
| 40 proc = input_api.subprocess.Popen([ | 39 proc = input_api.subprocess.Popen([ |
| 41 input_api.os_path.join('tests', item), '-q']) | 40 input_api.os_path.join('tests', item), '-q']) |
| 42 proc.communicate() | 41 proc.communicate() |
| 43 if proc.returncode: | 42 if proc.returncode: |
| 44 out.append(output_api.PresubmitError('Unit test %s failed' % item)) | 43 out.append(output_api.PresubmitError('Unit test %s failed' % item)) |
| 45 return out | 44 return out |
| OLD | NEW |