aboutsummaryrefslogtreecommitdiff
path: root/src/runtime
diff options
context:
space:
mode:
authorMichael Anthony Knyszek <mknyszek@google.com>2025-12-08 16:17:15 +0000
committerGopher Robot <gobot@golang.org>2025-12-08 08:36:30 -0800
commit44a39c9dacdb3378197b9515add22d292dd71af9 (patch)
tree5efc9b17249e500189f4c9ef5fa4a4e8bc4e8b00 /src/runtime
parent3a6a034cd63e55f5ee00f9002e62204fa50f96bf (diff)
downloadgo-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.go32
-rw-r--r--src/runtime/metrics_test.go20
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)
- }
-}