From c3f346a485f2fa97a7bdee82d587419b3823a1ba Mon Sep 17 00:00:00 2001 From: Kir Kolyshkin Date: Thu, 29 Aug 2024 19:51:22 -0700 Subject: math,os,os/*: use testenv.Executable As some callers don't have a testing context, modify testenv.Executable to accept nil (similar to how testenv.GOROOT works). Change-Id: I39112a7869933785a26b5cb6520055b3cc42b847 Reviewed-on: https://go-review.googlesource.com/c/go/+/609835 Reviewed-by: Ian Lance Taylor Auto-Submit: Ian Lance Taylor LUCI-TryBot-Result: Go LUCI Reviewed-by: Dmitri Shuralyov --- src/internal/testenv/exec.go | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'src/internal/testenv/exec.go') diff --git a/src/internal/testenv/exec.go b/src/internal/testenv/exec.go index 9f21b323ab..7b251b6022 100644 --- a/src/internal/testenv/exec.go +++ b/src/internal/testenv/exec.go @@ -32,8 +32,12 @@ import ( // for the resulting error. func MustHaveExec(t testing.TB) { if err := tryExec(); err != nil { + msg := fmt.Sprintf("cannot exec subprocess on %s/%s: %v", runtime.GOOS, runtime.GOARCH, err) + if t == nil { + panic(msg) + } t.Helper() - t.Skipf("skipping test: cannot exec subprocess on %s/%s: %v", runtime.GOOS, runtime.GOARCH, err) + t.Skip("skipping test:", msg) } } @@ -81,7 +85,11 @@ func Executable(t testing.TB) string { exe, err := exePath() if err != nil { - t.Fatalf("os.Executable error: %v", err) + msg := fmt.Sprintf("os.Executable error: %v", err) + if t == nil { + panic(msg) + } + t.Fatal(msg) } return exe } -- cgit v1.3