OLD | NEW |
---|---|
1 # Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2013 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 """Presubmit script for android buildbot. | 5 """Presubmit script for android buildbot. |
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 |
(...skipping 17 matching lines...) Expand all Loading... | |
28 return results | 28 return results |
29 | 29 |
30 | 30 |
31 def CommonChecks(input_api, output_api): | 31 def CommonChecks(input_api, output_api): |
32 output = [] | 32 output = [] |
33 | 33 |
34 def J(*dirs): | 34 def J(*dirs): |
35 """Returns a path relative to presubmit directory.""" | 35 """Returns a path relative to presubmit directory.""" |
36 return input_api.os_path.join(input_api.PresubmitLocalPath(), *dirs) | 36 return input_api.os_path.join(input_api.PresubmitLocalPath(), *dirs) |
37 | 37 |
38 # warnings: | |
39 # C0301 - line length > 80 chars | |
frankf
2014/02/03 18:58:51
hmm, so why are these exempt? Is it just temporary
jbudorick
2014/02/03 19:33:57
No. The exemptions are all here because the script
| |
40 # E1002 - |super| on old-style class | |
41 # R0201 - method could be a function | |
42 # W0212 - protected member access | |
43 # W0401 - wildcard import | |
44 # W0614 - unused import | |
45 # W0702 - bare-except ("except:") | |
46 | |
47 warning_exemptions = { | |
48 r'adb_logcat_printer\.py$' : ['W0702'], | |
49 r'gyp/apk_install\.py$' : ['C0301'], | |
50 r'host_heartbeat\.py$' : ['W0702'], | |
51 r'install_emulator_deps\.py$' : ['C0301'], | |
52 r'pylib/base/test_dispatcher_unittest\.py$' : ['R0201','W0212'], | |
53 r'pylib/chrome_test_server_spawner\.py$' : ['W0702'], | |
54 r'pylib/constants\.py$' : ['W0212'], | |
55 r'pylib/forwarder\.py$' : ['W0212'], | |
56 r'pylib/gtest/setup\.py$' : ['W0212'], | |
57 r'pylib/gtest/test_package_apk\.py$' : ['W0212'], | |
58 r'pylib/gtest/test_package\.py$' : ['R0201'], | |
59 r'pylib/host_driven/tests_annotations\.py$' : ['W0212'], | |
60 r'pylib/instrumentation/test_jar\.py$' : ['W0702'], | |
61 r'pylib/linker/test_case\.py$' : ['R0201'], | |
62 r'pylib/perf/surface_stats_collector_unittest\.py$' : ['W0212'], | |
63 r'pylib/pexpect\.py$' : ['W0401','W0614'], | |
64 r'pylib/utils/reraiser_thread\.py$' : ['W0212'], | |
65 r'pylib/utils/flakiness_dashboard_results_uploader\.py$' : | |
66 ['E1002','R0201'], | |
67 r'pylib/valgrind_tools\.py$' : ['R0201'], | |
68 r'pylib/utils/timeout_retry\.py$' : ['W0702'], | |
69 r'pylib/utils/xvfb\.py$' : ['W0702'] | |
70 } | |
71 | |
72 all_disabled_warnings = ['F0401'] | |
73 # exempt android_commands because it's a mess and will be replaced soon. | |
74 all_exempted_files = [r'pylib/android_commands\.py$'] | |
75 for filename, warnings in warning_exemptions.items(): | |
76 output.extend(input_api.canned_checks.RunPylint( | |
77 input_api, | |
78 output_api, | |
79 white_list=[filename], | |
80 disabled_warnings=list(all_disabled_warnings) + warnings)) | |
81 all_exempted_files.append(filename) | |
82 | |
38 output.extend(input_api.canned_checks.RunPylint( | 83 output.extend(input_api.canned_checks.RunPylint( |
39 input_api, | 84 input_api, |
40 output_api, | 85 output_api, |
41 white_list=[r'PRESUBMIT\.py$', r'buildbot/.*\.py$'], | 86 white_list=[r'.*\.py$'], |
87 black_list=all_exempted_files, | |
88 disabled_warnings=list(all_disabled_warnings), | |
42 extra_paths_list=[ | 89 extra_paths_list=[ |
43 J(), J('..', '..', 'third_party', 'android_testrunner'), | 90 J(), J('..', '..', 'third_party', 'android_testrunner'), |
44 J('buildbot')])) | 91 J('buildbot')])) |
45 | 92 |
46 output.extend(input_api.canned_checks.RunUnitTestsInDirectory( | 93 output.extend(input_api.canned_checks.RunUnitTestsInDirectory( |
47 input_api, output_api, J('buildbot', 'tests'))) | 94 input_api, output_api, J('buildbot', 'tests'))) |
48 output.extend(_CheckDeletionsOnlyFiles(input_api, output_api)) | 95 output.extend(_CheckDeletionsOnlyFiles(input_api, output_api)) |
49 return output | 96 return output |
50 | 97 |
51 | 98 |
52 def CheckChangeOnUpload(input_api, output_api): | 99 def CheckChangeOnUpload(input_api, output_api): |
53 return CommonChecks(input_api, output_api) | 100 return CommonChecks(input_api, output_api) |
54 | 101 |
55 | 102 |
56 def CheckChangeOnCommit(input_api, output_api): | 103 def CheckChangeOnCommit(input_api, output_api): |
57 return CommonChecks(input_api, output_api) | 104 return CommonChecks(input_api, output_api) |
OLD | NEW |