xref: /aosp_15_r20/external/cronet/build/android/PRESUBMIT.py (revision 6777b5387eb2ff775bb5750e3f5d96f37fb7352b)
1*6777b538SAndroid Build Coastguard Worker# Copyright 2013 The Chromium Authors
2*6777b538SAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license that can be
3*6777b538SAndroid Build Coastguard Worker# found in the LICENSE file.
4*6777b538SAndroid Build Coastguard Worker
5*6777b538SAndroid Build Coastguard Worker"""Presubmit script for android buildbot.
6*6777b538SAndroid Build Coastguard Worker
7*6777b538SAndroid Build Coastguard WorkerSee http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts for
8*6777b538SAndroid Build Coastguard Workerdetails on the presubmit API built into depot_tools.
9*6777b538SAndroid Build Coastguard Worker"""
10*6777b538SAndroid Build Coastguard Worker
11*6777b538SAndroid Build Coastguard Worker
12*6777b538SAndroid Build Coastguard Worker
13*6777b538SAndroid Build Coastguard Workerdef CommonChecks(input_api, output_api):
14*6777b538SAndroid Build Coastguard Worker  # These tools don't run on Windows so these tests don't work and give many
15*6777b538SAndroid Build Coastguard Worker  # verbose and cryptic failure messages. Linting the code is also skipped on
16*6777b538SAndroid Build Coastguard Worker  # Windows because it will fail due to os differences.
17*6777b538SAndroid Build Coastguard Worker  if input_api.sys.platform == 'win32':
18*6777b538SAndroid Build Coastguard Worker    return []
19*6777b538SAndroid Build Coastguard Worker
20*6777b538SAndroid Build Coastguard Worker  build_android_dir = input_api.PresubmitLocalPath()
21*6777b538SAndroid Build Coastguard Worker
22*6777b538SAndroid Build Coastguard Worker  def J(*dirs):
23*6777b538SAndroid Build Coastguard Worker    """Returns a path relative to presubmit directory."""
24*6777b538SAndroid Build Coastguard Worker    return input_api.os_path.join(build_android_dir, *dirs)
25*6777b538SAndroid Build Coastguard Worker
26*6777b538SAndroid Build Coastguard Worker  build_pys = [
27*6777b538SAndroid Build Coastguard Worker      r'gn/.*\.py$',
28*6777b538SAndroid Build Coastguard Worker      r'gyp/.*\.py$',
29*6777b538SAndroid Build Coastguard Worker  ]
30*6777b538SAndroid Build Coastguard Worker  tests = []
31*6777b538SAndroid Build Coastguard Worker  # yapf likes formatting the extra_paths_list to be less readable.
32*6777b538SAndroid Build Coastguard Worker  # yapf: disable
33*6777b538SAndroid Build Coastguard Worker  tests.extend(
34*6777b538SAndroid Build Coastguard Worker      input_api.canned_checks.GetPylint(
35*6777b538SAndroid Build Coastguard Worker          input_api,
36*6777b538SAndroid Build Coastguard Worker          output_api,
37*6777b538SAndroid Build Coastguard Worker          pylintrc='pylintrc',
38*6777b538SAndroid Build Coastguard Worker          files_to_skip=[
39*6777b538SAndroid Build Coastguard Worker              r'.*_pb2\.py'
40*6777b538SAndroid Build Coastguard Worker          ] + build_pys,
41*6777b538SAndroid Build Coastguard Worker          extra_paths_list=[
42*6777b538SAndroid Build Coastguard Worker              J(),
43*6777b538SAndroid Build Coastguard Worker              J('gyp'),
44*6777b538SAndroid Build Coastguard Worker              J('buildbot'),
45*6777b538SAndroid Build Coastguard Worker              J('..', 'util', 'lib', 'common'),
46*6777b538SAndroid Build Coastguard Worker              J('..', '..', 'third_party', 'catapult', 'common',
47*6777b538SAndroid Build Coastguard Worker                'py_trace_event'),
48*6777b538SAndroid Build Coastguard Worker              J('..', '..', 'third_party', 'catapult', 'common', 'py_utils'),
49*6777b538SAndroid Build Coastguard Worker              J('..', '..', 'third_party', 'catapult', 'devil'),
50*6777b538SAndroid Build Coastguard Worker              J('..', '..', 'third_party', 'catapult', 'tracing'),
51*6777b538SAndroid Build Coastguard Worker              J('..', '..', 'third_party', 'depot_tools'),
52*6777b538SAndroid Build Coastguard Worker              J('..', '..', 'third_party', 'colorama', 'src'),
53*6777b538SAndroid Build Coastguard Worker              J('..', '..', 'build'),
54*6777b538SAndroid Build Coastguard Worker          ],
55*6777b538SAndroid Build Coastguard Worker          version='2.7'))
56*6777b538SAndroid Build Coastguard Worker  tests.extend(
57*6777b538SAndroid Build Coastguard Worker      input_api.canned_checks.GetPylint(
58*6777b538SAndroid Build Coastguard Worker          input_api,
59*6777b538SAndroid Build Coastguard Worker          output_api,
60*6777b538SAndroid Build Coastguard Worker          files_to_check=build_pys,
61*6777b538SAndroid Build Coastguard Worker          files_to_skip=[
62*6777b538SAndroid Build Coastguard Worker              r'.*_pb2\.py',
63*6777b538SAndroid Build Coastguard Worker              r'.*_pb2\.py',
64*6777b538SAndroid Build Coastguard Worker              r'.*create_unwind_table\.py',
65*6777b538SAndroid Build Coastguard Worker              r'.*create_unwind_table_tests\.py',
66*6777b538SAndroid Build Coastguard Worker          ],
67*6777b538SAndroid Build Coastguard Worker          extra_paths_list=[J('gyp'), J('gn')],
68*6777b538SAndroid Build Coastguard Worker          version='2.7'))
69*6777b538SAndroid Build Coastguard Worker
70*6777b538SAndroid Build Coastguard Worker  tests.extend(
71*6777b538SAndroid Build Coastguard Worker      input_api.canned_checks.GetPylint(
72*6777b538SAndroid Build Coastguard Worker          input_api,
73*6777b538SAndroid Build Coastguard Worker          output_api,
74*6777b538SAndroid Build Coastguard Worker          files_to_check=[
75*6777b538SAndroid Build Coastguard Worker              r'.*create_unwind_table\.py',
76*6777b538SAndroid Build Coastguard Worker              r'.*create_unwind_table_tests\.py',
77*6777b538SAndroid Build Coastguard Worker          ],
78*6777b538SAndroid Build Coastguard Worker          extra_paths_list=[J('gyp'), J('gn')],
79*6777b538SAndroid Build Coastguard Worker          version='2.7'))
80*6777b538SAndroid Build Coastguard Worker  # yapf: enable
81*6777b538SAndroid Build Coastguard Worker
82*6777b538SAndroid Build Coastguard Worker  # Disabled due to http://crbug.com/410936
83*6777b538SAndroid Build Coastguard Worker  #output.extend(input_api.canned_checks.RunUnitTestsInDirectory(
84*6777b538SAndroid Build Coastguard Worker  #input_api, output_api, J('buildbot', 'tests')))
85*6777b538SAndroid Build Coastguard Worker
86*6777b538SAndroid Build Coastguard Worker  pylib_test_env = dict(input_api.environ)
87*6777b538SAndroid Build Coastguard Worker  pylib_test_env.update({
88*6777b538SAndroid Build Coastguard Worker      'PYTHONPATH': build_android_dir,
89*6777b538SAndroid Build Coastguard Worker      'PYTHONDONTWRITEBYTECODE': '1',
90*6777b538SAndroid Build Coastguard Worker  })
91*6777b538SAndroid Build Coastguard Worker  tests.extend(
92*6777b538SAndroid Build Coastguard Worker      input_api.canned_checks.GetUnitTests(
93*6777b538SAndroid Build Coastguard Worker          input_api,
94*6777b538SAndroid Build Coastguard Worker          output_api,
95*6777b538SAndroid Build Coastguard Worker          unit_tests=[
96*6777b538SAndroid Build Coastguard Worker              J('.', 'list_class_verification_failures_test.py'),
97*6777b538SAndroid Build Coastguard Worker              J('pylib', 'constants', 'host_paths_unittest.py'),
98*6777b538SAndroid Build Coastguard Worker              J('pylib', 'gtest', 'gtest_test_instance_test.py'),
99*6777b538SAndroid Build Coastguard Worker              J('pylib', 'instrumentation',
100*6777b538SAndroid Build Coastguard Worker                'instrumentation_test_instance_test.py'),
101*6777b538SAndroid Build Coastguard Worker              J('pylib', 'local', 'device', 'local_device_gtest_run_test.py'),
102*6777b538SAndroid Build Coastguard Worker              J('pylib', 'local', 'device',
103*6777b538SAndroid Build Coastguard Worker                'local_device_instrumentation_test_run_test.py'),
104*6777b538SAndroid Build Coastguard Worker              J('pylib', 'local', 'device', 'local_device_test_run_test.py'),
105*6777b538SAndroid Build Coastguard Worker              J('pylib', 'local', 'machine',
106*6777b538SAndroid Build Coastguard Worker                'local_machine_junit_test_run_test.py'),
107*6777b538SAndroid Build Coastguard Worker              J('pylib', 'output', 'local_output_manager_test.py'),
108*6777b538SAndroid Build Coastguard Worker              J('pylib', 'output', 'noop_output_manager_test.py'),
109*6777b538SAndroid Build Coastguard Worker              J('pylib', 'output', 'remote_output_manager_test.py'),
110*6777b538SAndroid Build Coastguard Worker              J('pylib', 'results', 'json_results_test.py'),
111*6777b538SAndroid Build Coastguard Worker              J('pylib', 'utils', 'chrome_proxy_utils_test.py'),
112*6777b538SAndroid Build Coastguard Worker              J('pylib', 'utils', 'code_coverage_utils_test.py'),
113*6777b538SAndroid Build Coastguard Worker              J('pylib', 'utils', 'decorators_test.py'),
114*6777b538SAndroid Build Coastguard Worker              J('pylib', 'utils', 'device_dependencies_test.py'),
115*6777b538SAndroid Build Coastguard Worker              J('pylib', 'utils', 'dexdump_test.py'),
116*6777b538SAndroid Build Coastguard Worker              J('pylib', 'utils', 'gold_utils_test.py'),
117*6777b538SAndroid Build Coastguard Worker              J('pylib', 'utils', 'test_filter_test.py'),
118*6777b538SAndroid Build Coastguard Worker              J('gyp', 'dex_test.py'),
119*6777b538SAndroid Build Coastguard Worker              J('gyp', 'util', 'build_utils_test.py'),
120*6777b538SAndroid Build Coastguard Worker              J('gyp', 'util', 'manifest_utils_test.py'),
121*6777b538SAndroid Build Coastguard Worker              J('gyp', 'util', 'md5_check_test.py'),
122*6777b538SAndroid Build Coastguard Worker              J('gyp', 'util', 'resource_utils_test.py'),
123*6777b538SAndroid Build Coastguard Worker          ],
124*6777b538SAndroid Build Coastguard Worker          env=pylib_test_env))
125*6777b538SAndroid Build Coastguard Worker
126*6777b538SAndroid Build Coastguard Worker  return input_api.RunTests(tests)
127*6777b538SAndroid Build Coastguard Worker
128*6777b538SAndroid Build Coastguard Worker
129*6777b538SAndroid Build Coastguard Workerdef CheckChangeOnUpload(input_api, output_api):
130*6777b538SAndroid Build Coastguard Worker  return CommonChecks(input_api, output_api)
131*6777b538SAndroid Build Coastguard Worker
132*6777b538SAndroid Build Coastguard Worker
133*6777b538SAndroid Build Coastguard Workerdef CheckChangeOnCommit(input_api, output_api):
134*6777b538SAndroid Build Coastguard Worker  return CommonChecks(input_api, output_api)
135