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 """Chromium presubmit script for src/base. | 5 """Chromium presubmit script for src/base. |
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 on the presubmit API built into gcl. | 8 for more details on the presubmit API built into gcl. |
9 """ | 9 """ |
10 | 10 |
11 def _CheckNoInterfacesInBase(input_api, output_api): | 11 def _CheckNoInterfacesInBase(input_api, output_api): |
12 """Checks to make sure no files in libbase.a have |@interface|.""" | 12 """Checks to make sure no files in libbase.a have |@interface|.""" |
13 pattern = input_api.re.compile(r'^\s*@interface', input_api.re.MULTILINE) | 13 pattern = input_api.re.compile(r'^\s*@interface', input_api.re.MULTILINE) |
14 files = [] | 14 files = [] |
15 for f in input_api.AffectedSourceFiles(input_api.FilterSourceFile): | 15 for f in input_api.AffectedSourceFiles(input_api.FilterSourceFile): |
16 if (f.LocalPath().startswith('base/') and | 16 if (f.LocalPath().startswith('base/') and |
17 not "/test/" in f.LocalPath() and | 17 not "/test/" in f.LocalPath() and |
18 not f.LocalPath().endswith('_unittest.mm')): | 18 not f.LocalPath().endswith('_unittest.mm') and |
| 19 not f.LocalPath().endswith('mac/sdk_forward_declarations.h')): |
19 contents = input_api.ReadFile(f) | 20 contents = input_api.ReadFile(f) |
20 if pattern.search(contents): | 21 if pattern.search(contents): |
21 files.append(f) | 22 files.append(f) |
22 | 23 |
23 if len(files): | 24 if len(files): |
24 return [ output_api.PresubmitError( | 25 return [ output_api.PresubmitError( |
25 'Objective-C interfaces or categories are forbidden in libbase. ' + | 26 'Objective-C interfaces or categories are forbidden in libbase. ' + |
26 'See http://groups.google.com/a/chromium.org/group/chromium-dev/' + | 27 'See http://groups.google.com/a/chromium.org/group/chromium-dev/' + |
27 'browse_thread/thread/efb28c10435987fd', | 28 'browse_thread/thread/efb28c10435987fd', |
28 files) ] | 29 files) ] |
(...skipping 17 matching lines...) Expand all Loading... |
46 results.extend(_CommonChecks(input_api, output_api)) | 47 results.extend(_CommonChecks(input_api, output_api)) |
47 return results | 48 return results |
48 | 49 |
49 | 50 |
50 def GetPreferredTrySlaves(): | 51 def GetPreferredTrySlaves(): |
51 return [ | 52 return [ |
52 'linux_rel:sync_integration_tests', | 53 'linux_rel:sync_integration_tests', |
53 'mac_rel:sync_integration_tests', | 54 'mac_rel:sync_integration_tests', |
54 'win_rel:sync_integration_tests', | 55 'win_rel:sync_integration_tests', |
55 ] | 56 ] |
OLD | NEW |