# Copyright (c) 2012 The Chromium Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. import os _EXCLUDED_PATHS = [] _LICENSE_HEADER = ( r".*? Copyright \(c\) 20\d\d The Chromium Authors\. All rights reserved\." "\n" r".*? Use of this source code is governed by a BSD-style license that can " "be\n" r".*? found in the LICENSE file\." "\n" ) def _CommonChecks(input_api, output_api): results = [] results.extend(input_api.canned_checks.PanProjectChecks( input_api, output_api, excluded_paths=_EXCLUDED_PATHS)) src_dir = os.path.join(input_api.change.RepositoryRoot(), "src") def IsResource(maybe_resource): f = maybe_resource.AbsoluteLocalPath() if not f.endswith(('.css', '.html', '.js')): return False return True from web_dev_style import css_checker, js_checker results.extend(css_checker.CSSChecker(input_api, output_api, file_filter=IsResource).RunChecks()) results.extend(js_checker.JSChecker(input_api, output_api, file_filter=IsResource).RunChecks()) from build import check_gyp gyp_result = check_gyp.GypCheck() if len(gyp_result) > 0: results.extend([output_api.PresubmitError(gyp_result)]) from build import check_grit grit_result = check_grit.GritCheck() if len(grit_result) > 0: results.extend([output_api.PresubmitError(grit_result)]) black_list = input_api.DEFAULT_BLACK_LIST sources = lambda x: input_api.FilterSourceFile(x, black_list=black_list) results.extend(input_api.canned_checks.CheckLicense( input_api, output_api, _LICENSE_HEADER, source_file_filter=sources)) return results def GetPathsToPrepend(input_api): web_dev_style_path = input_api.os_path.join( input_api.change.RepositoryRoot(), "third_party", "web_dev_style") return [input_api.PresubmitLocalPath(), web_dev_style_path] def RunWithPrependedPath(prepended_path, fn, *args): import sys old_path = sys.path try: sys.path = prepended_path + old_path return fn(*args) finally: sys.path = old_path def CheckChangeOnUpload(input_api, output_api): def go(): results = [] results.extend(_CommonChecks(input_api, output_api)) return results return RunWithPrependedPath(GetPathsToPrepend(input_api), go) def CheckChangeOnCommit(input_api, output_api): def go(): results = [] results.extend(_CommonChecks(input_api, output_api)) return results return RunWithPrependedPath(GetPathsToPrepend(input_api), go)