xref: /aosp_15_r20/external/angle/build/fuchsia/test/PRESUBMIT.py (revision 8975f5c5ed3d1c378011245431ada316dfb6f244)
1*8975f5c5SAndroid Build Coastguard Worker# Copyright 2022 The Chromium Authors
2*8975f5c5SAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license that can be
3*8975f5c5SAndroid Build Coastguard Worker# found in the LICENSE file.
4*8975f5c5SAndroid Build Coastguard Worker"""Top-level presubmit script for build/fuchsia/test.
5*8975f5c5SAndroid Build Coastguard Worker
6*8975f5c5SAndroid Build Coastguard WorkerSee http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts
7*8975f5c5SAndroid Build Coastguard Workerfor more details about the presubmit API built into depot_tools.
8*8975f5c5SAndroid Build Coastguard Worker"""
9*8975f5c5SAndroid Build Coastguard Worker
10*8975f5c5SAndroid Build Coastguard Worker
11*8975f5c5SAndroid Build Coastguard Worker_EXTRA_PATHS_COMPONENTS = [('testing', )]
12*8975f5c5SAndroid Build Coastguard Worker
13*8975f5c5SAndroid Build Coastguard Worker# pylint: disable=invalid-name,missing-function-docstring
14*8975f5c5SAndroid Build Coastguard Workerdef CommonChecks(input_api, output_api):
15*8975f5c5SAndroid Build Coastguard Worker    # Neither running nor linting Fuchsia tests is supported on Windows.
16*8975f5c5SAndroid Build Coastguard Worker    if input_api.is_windows:
17*8975f5c5SAndroid Build Coastguard Worker        return []
18*8975f5c5SAndroid Build Coastguard Worker
19*8975f5c5SAndroid Build Coastguard Worker    tests = []
20*8975f5c5SAndroid Build Coastguard Worker
21*8975f5c5SAndroid Build Coastguard Worker    chromium_src_path = input_api.os_path.realpath(
22*8975f5c5SAndroid Build Coastguard Worker        input_api.os_path.join(input_api.PresubmitLocalPath(), '..', '..',
23*8975f5c5SAndroid Build Coastguard Worker                               '..'))
24*8975f5c5SAndroid Build Coastguard Worker    pylint_extra_paths = [
25*8975f5c5SAndroid Build Coastguard Worker        input_api.os_path.join(chromium_src_path, *component)
26*8975f5c5SAndroid Build Coastguard Worker        for component in _EXTRA_PATHS_COMPONENTS
27*8975f5c5SAndroid Build Coastguard Worker    ]
28*8975f5c5SAndroid Build Coastguard Worker    tests.extend(
29*8975f5c5SAndroid Build Coastguard Worker        input_api.canned_checks.GetPylint(input_api,
30*8975f5c5SAndroid Build Coastguard Worker                                          output_api,
31*8975f5c5SAndroid Build Coastguard Worker                                          extra_paths_list=pylint_extra_paths,
32*8975f5c5SAndroid Build Coastguard Worker                                          pylintrc='pylintrc',
33*8975f5c5SAndroid Build Coastguard Worker                                          version='2.7'))
34*8975f5c5SAndroid Build Coastguard Worker
35*8975f5c5SAndroid Build Coastguard Worker    # coveragetest.py is responsible for running unit tests in this directory
36*8975f5c5SAndroid Build Coastguard Worker    tests.append(
37*8975f5c5SAndroid Build Coastguard Worker        input_api.Command(
38*8975f5c5SAndroid Build Coastguard Worker            name='coveragetest',
39*8975f5c5SAndroid Build Coastguard Worker            cmd=[input_api.python3_executable, 'coveragetest.py'],
40*8975f5c5SAndroid Build Coastguard Worker            kwargs={},
41*8975f5c5SAndroid Build Coastguard Worker            message=output_api.PresubmitError))
42*8975f5c5SAndroid Build Coastguard Worker    return input_api.RunTests(tests)
43*8975f5c5SAndroid Build Coastguard Worker
44*8975f5c5SAndroid Build Coastguard Worker
45*8975f5c5SAndroid Build Coastguard Workerdef CheckChangeOnUpload(input_api, output_api):
46*8975f5c5SAndroid Build Coastguard Worker    return CommonChecks(input_api, output_api)
47*8975f5c5SAndroid Build Coastguard Worker
48*8975f5c5SAndroid Build Coastguard Worker
49*8975f5c5SAndroid Build Coastguard Workerdef CheckChangeOnCommit(input_api, output_api):
50*8975f5c5SAndroid Build Coastguard Worker    return CommonChecks(input_api, output_api)
51