OLD | NEW |
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2012 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 Chromium. | 5 """Top-level presubmit script for Chromium. |
6 | 6 |
7 See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts | 7 See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts |
8 for more details about the presubmit API built into depot_tools. | 8 for more details about the presubmit API built into depot_tools. |
9 """ | 9 """ |
10 | 10 |
(...skipping 733 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
744 args += ['--file', f.LocalPath()] | 744 args += ['--file', f.LocalPath()] |
745 try: | 745 try: |
746 input_api.subprocess.check_output(args) | 746 input_api.subprocess.check_output(args) |
747 return [] | 747 return [] |
748 except input_api.subprocess.CalledProcessError as error: | 748 except input_api.subprocess.CalledProcessError as error: |
749 return [output_api.PresubmitError( | 749 return [output_api.PresubmitError( |
750 'checkperms.py failed:', | 750 'checkperms.py failed:', |
751 long_text=error.output)] | 751 long_text=error.output)] |
752 | 752 |
753 | 753 |
| 754 def _CheckTeamTags(input_api, output_api): |
| 755 """Check that OWNERS files have consistent TEAM and COMPONENT tags.""" |
| 756 checkteamtags_tool = input_api.os_path.join( |
| 757 input_api.PresubmitLocalPath(), |
| 758 'tools', 'checkteamtags', 'checkteamtags.py') |
| 759 args = [input_api.python_executable, checkteamtags_tool, |
| 760 '--root', input_api.change.RepositoryRoot()] |
| 761 files = [f.LocalPath() for f in input_api.AffectedFiles() |
| 762 if input_api.os_path.basename(f.AbsoluteLocalPath()) == 'OWNERS'] |
| 763 try: |
| 764 if files: |
| 765 input_api.subprocess.check_output(args + files) |
| 766 return [] |
| 767 except input_api.subprocess.CalledProcessError as error: |
| 768 return [output_api.PresubmitError( |
| 769 'checkteamtags.py failed:', |
| 770 long_text=error.output)] |
| 771 |
| 772 |
754 def _CheckNoAuraWindowPropertyHInHeaders(input_api, output_api): | 773 def _CheckNoAuraWindowPropertyHInHeaders(input_api, output_api): |
755 """Makes sure we don't include ui/aura/window_property.h | 774 """Makes sure we don't include ui/aura/window_property.h |
756 in header files. | 775 in header files. |
757 """ | 776 """ |
758 pattern = input_api.re.compile(r'^#include\s*"ui/aura/window_property.h"') | 777 pattern = input_api.re.compile(r'^#include\s*"ui/aura/window_property.h"') |
759 errors = [] | 778 errors = [] |
760 for f in input_api.AffectedFiles(): | 779 for f in input_api.AffectedFiles(): |
761 if not f.LocalPath().endswith('.h'): | 780 if not f.LocalPath().endswith('.h'): |
762 continue | 781 continue |
763 for line_num, line in f.ChangedContents(): | 782 for line_num, line in f.ChangedContents(): |
(...skipping 1274 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2038 results.extend(_CheckNoIOStreamInHeaders(input_api, output_api)) | 2057 results.extend(_CheckNoIOStreamInHeaders(input_api, output_api)) |
2039 results.extend(_CheckNoUNIT_TESTInSourceFiles(input_api, output_api)) | 2058 results.extend(_CheckNoUNIT_TESTInSourceFiles(input_api, output_api)) |
2040 results.extend(_CheckDCHECK_IS_ONHasBraces(input_api, output_api)) | 2059 results.extend(_CheckDCHECK_IS_ONHasBraces(input_api, output_api)) |
2041 results.extend(_CheckNoNewWStrings(input_api, output_api)) | 2060 results.extend(_CheckNoNewWStrings(input_api, output_api)) |
2042 results.extend(_CheckNoDEPSGIT(input_api, output_api)) | 2061 results.extend(_CheckNoDEPSGIT(input_api, output_api)) |
2043 results.extend(_CheckNoBannedFunctions(input_api, output_api)) | 2062 results.extend(_CheckNoBannedFunctions(input_api, output_api)) |
2044 results.extend(_CheckNoPragmaOnce(input_api, output_api)) | 2063 results.extend(_CheckNoPragmaOnce(input_api, output_api)) |
2045 results.extend(_CheckNoTrinaryTrueFalse(input_api, output_api)) | 2064 results.extend(_CheckNoTrinaryTrueFalse(input_api, output_api)) |
2046 results.extend(_CheckUnwantedDependencies(input_api, output_api)) | 2065 results.extend(_CheckUnwantedDependencies(input_api, output_api)) |
2047 results.extend(_CheckFilePermissions(input_api, output_api)) | 2066 results.extend(_CheckFilePermissions(input_api, output_api)) |
| 2067 results.extend(_CheckTeamTags(input_api, output_api)) |
2048 results.extend(_CheckNoAuraWindowPropertyHInHeaders(input_api, output_api)) | 2068 results.extend(_CheckNoAuraWindowPropertyHInHeaders(input_api, output_api)) |
2049 results.extend(_CheckIncludeOrder(input_api, output_api)) | 2069 results.extend(_CheckIncludeOrder(input_api, output_api)) |
2050 results.extend(_CheckForVersionControlConflicts(input_api, output_api)) | 2070 results.extend(_CheckForVersionControlConflicts(input_api, output_api)) |
2051 results.extend(_CheckPatchFiles(input_api, output_api)) | 2071 results.extend(_CheckPatchFiles(input_api, output_api)) |
2052 results.extend(_CheckHardcodedGoogleHostsInLowerLayers(input_api, output_api)) | 2072 results.extend(_CheckHardcodedGoogleHostsInLowerLayers(input_api, output_api)) |
2053 results.extend(_CheckNoAbbreviationInPngFileName(input_api, output_api)) | 2073 results.extend(_CheckNoAbbreviationInPngFileName(input_api, output_api)) |
2054 results.extend(_CheckForInvalidOSMacros(input_api, output_api)) | 2074 results.extend(_CheckForInvalidOSMacros(input_api, output_api)) |
2055 results.extend(_CheckForInvalidIfDefinedMacros(input_api, output_api)) | 2075 results.extend(_CheckForInvalidIfDefinedMacros(input_api, output_api)) |
2056 results.extend(_CheckFlakyTestUsage(input_api, output_api)) | 2076 results.extend(_CheckFlakyTestUsage(input_api, output_api)) |
2057 results.extend(_CheckAddedDepsHaveTargetApprovals(input_api, output_api)) | 2077 results.extend(_CheckAddedDepsHaveTargetApprovals(input_api, output_api)) |
(...skipping 264 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2322 results.extend(input_api.canned_checks.CheckTreeIsOpen( | 2342 results.extend(input_api.canned_checks.CheckTreeIsOpen( |
2323 input_api, | 2343 input_api, |
2324 output_api, | 2344 output_api, |
2325 json_url='http://chromium-status.appspot.com/current?format=json')) | 2345 json_url='http://chromium-status.appspot.com/current?format=json')) |
2326 | 2346 |
2327 results.extend(input_api.canned_checks.CheckChangeHasBugField( | 2347 results.extend(input_api.canned_checks.CheckChangeHasBugField( |
2328 input_api, output_api)) | 2348 input_api, output_api)) |
2329 results.extend(input_api.canned_checks.CheckChangeHasDescription( | 2349 results.extend(input_api.canned_checks.CheckChangeHasDescription( |
2330 input_api, output_api)) | 2350 input_api, output_api)) |
2331 return results | 2351 return results |
OLD | NEW |