blob: 83988c0e7c1f70183c4e6e8dd272081fdc2a7a21 [file] [log] [blame]
Austin Eng185fd3d2022-09-06 18:20:33 +00001# Copyright 2022 The Dawn & Tint Authors
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14
Austin Eng100d4bf2022-12-08 21:57:55 +000015
16def go_path(input_api):
17 go = input_api.os_path.join(input_api.change.RepositoryRoot(), "tools",
18 "golang", "bin", "go")
19 if input_api.is_windows:
20 go += '.exe'
21
22 return go
23
24
Austin Eng185fd3d2022-09-06 18:20:33 +000025def RunGoTests(input_api, output_api):
26 results = []
27 try:
Austin Eng100d4bf2022-12-08 21:57:55 +000028 input_api.subprocess.check_call_out(
29 [go_path(input_api), "test", "./..."],
30 stdout=input_api.subprocess.PIPE,
31 stderr=input_api.subprocess.PIPE,
32 cwd=input_api.PresubmitLocalPath())
Austin Eng185fd3d2022-09-06 18:20:33 +000033 except input_api.subprocess.CalledProcessError as e:
34 results.append(output_api.PresubmitError('%s' % (e, )))
35 return results