diff options
| author | Michael Anthony Knyszek <mknyszek@google.com> | 2025-12-08 16:17:15 +0000 |
|---|---|---|
| committer | Gopher Robot <gobot@golang.org> | 2025-12-08 08:36:30 -0800 |
| commit | 44a39c9dacdb3378197b9515add22d292dd71af9 (patch) | |
| tree | 5efc9b17249e500189f4c9ef5fa4a4e8bc4e8b00 /src/runtime | |
| parent | 3a6a034cd63e55f5ee00f9002e62204fa50f96bf (diff) | |
| download | go-44a39c9dacdb3378197b9515add22d292dd71af9.tar.xz | |
runtime: only run TestNotInGoMetricCallback when building with cgo
It seems like some platforms don't build with cgo at all, like
linux/ppc64.
Change-Id: Ibe5306e79899822e77d42cb3018f9f0c9ca2604c
Reviewed-on: https://go-review.googlesource.com/c/go/+/728140
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Cherry Mui <cherryyz@google.com>
Auto-Submit: Michael Knyszek <mknyszek@google.com>
Diffstat (limited to 'src/runtime')
| -rw-r--r-- | src/runtime/metrics_cgo_test.go | 32 | ||||
| -rw-r--r-- | src/runtime/metrics_test.go | 20 |
2 files changed, 32 insertions, 20 deletions
diff --git a/src/runtime/metrics_cgo_test.go b/src/runtime/metrics_cgo_test.go new file mode 100644 index 0000000000..6cc9d23195 --- /dev/null +++ b/src/runtime/metrics_cgo_test.go @@ -0,0 +1,32 @@ +// Copyright 2025 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +//go:build cgo + +package runtime_test + +import ( + "internal/race" + "runtime" + "testing" +) + +func TestNotInGoMetricCallback(t *testing.T) { + switch runtime.GOOS { + case "windows", "plan9": + t.Skip("unsupported on Windows and Plan9") + case "freebsd": + if race.Enabled { + t.Skipf("race + cgo freebsd not supported. See https://go.dev/issue/73788.") + } + } + + // This test is run in a subprocess to prevent other tests from polluting the metrics + // and because we need to make some cgo callbacks. + output := runTestProg(t, "testprogcgo", "NotInGoMetricCallback") + want := "OK\n" + if output != want { + t.Fatalf("output:\n%s\n\nwanted:\n%s", output, want) + } +} diff --git a/src/runtime/metrics_test.go b/src/runtime/metrics_test.go index 278efdc69f..92cec75465 100644 --- a/src/runtime/metrics_test.go +++ b/src/runtime/metrics_test.go @@ -9,7 +9,6 @@ import ( "internal/abi" "internal/goexperiment" "internal/profile" - "internal/race" "internal/testenv" "os" "reflect" @@ -1585,22 +1584,3 @@ func TestReadMetricsSched(t *testing.T) { t.Fatalf("output:\n%s\n\nwanted:\n%s", output, want) } } - -func TestNotInGoMetricCallback(t *testing.T) { - switch runtime.GOOS { - case "windows", "plan9": - t.Skip("unsupported on Windows and Plan9") - case "freebsd": - if race.Enabled { - t.Skipf("race + cgo freebsd not supported. See https://go.dev/issue/73788.") - } - } - - // This test is run in a subprocess to prevent other tests from polluting the metrics - // and because we need to make some cgo callbacks. - output := runTestProg(t, "testprogcgo", "NotInGoMetricCallback") - want := "OK\n" - if output != want { - t.Fatalf("output:\n%s\n\nwanted:\n%s", output, want) - } -} |
