[email protected] | 0227bae | 2014-08-07 07:28:11 | [diff] [blame^] | 1 | # Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 | # Use of this source code is governed by a BSD-style license that can be |
| 3 | # found in the LICENSE file. |
| 4 | |
| 5 | """Presubmit script for mojo/embedder. |
| 6 | |
| 7 | See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts |
| 8 | for more details about the presubmit API built into depot_tools. |
| 9 | """ |
| 10 | |
| 11 | import os.path |
| 12 | |
| 13 | def CheckChangeOnUpload(input_api, output_api): |
| 14 | # Additional python module paths (we're in src/mojo/); not everyone needs |
| 15 | # them, but it's easiest to add them to everyone's path. |
| 16 | # For ply and jinja2: |
| 17 | third_party_path = os.path.join( |
| 18 | input_api.PresubmitLocalPath(), "..", "third_party") |
| 19 | # For the bindings generator: |
| 20 | mojo_public_bindings_pylib_path = os.path.join( |
| 21 | input_api.PresubmitLocalPath(), "public", "tools", "bindings", "pylib") |
| 22 | # TODO(vtl): Don't lint these files until the (many) problems are fixed |
| 23 | # (possibly by deleting/rewriting some files). |
| 24 | temporary_black_list = input_api.DEFAULT_BLACK_LIST + \ |
| 25 | (r".*\bpublic[\\\/]tools[\\\/]bindings[\\\/]pylib[\\\/]mojom[\\\/]" |
| 26 | r"generate[\\\/].+\.py$", |
| 27 | r".*\bpublic[\\\/]tools[\\\/]bindings[\\\/]generators[\\\/].+\.py$", |
| 28 | r".*\bspy[\\\/]ui[\\\/].+\.py$", |
| 29 | r".*\btools[\\\/]pylib[\\\/]transitive_hash\.py$", |
| 30 | r".*\btools[\\\/]test_runner\.py$") |
| 31 | |
| 32 | results = [] |
| 33 | pylint_extra_paths = [third_party_path, mojo_public_bindings_pylib_path] |
| 34 | results += input_api.canned_checks.RunPylint( |
| 35 | input_api, output_api, extra_paths_list=pylint_extra_paths, |
| 36 | black_list=temporary_black_list) |
| 37 | return results |