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) - } -}