From 70c3bf27de465099de114dae15b78d9dd56dac7e Mon Sep 17 00:00:00 2001 From: Alberto Donizetti Date: Wed, 13 Jun 2018 20:48:26 +0200 Subject: [PATCH] runtime/pprof: use testenv.GoToolPath in TestMapping The TestMapping test invokes the go tool in an exec.Command by directly hard-coding a "go" string for the command. This can cause test failures on systems where the "go" command points to an old toolchain where the test is not supposed to work. Use testenv.GoToolPath instead. Also call 'go run' directly on the mappingtest/main.go file instead of go-running the directory. Change-Id: Ib91877c021209cbf4da50a561737d7a9d42c6adc Reviewed-on: https://go-review.googlesource.com/118662 Run-TryBot: Alberto Donizetti TryBot-Result: Gobot Gobot Reviewed-by: Brad Fitzpatrick --- src/runtime/pprof/proto_test.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/runtime/pprof/proto_test.go b/src/runtime/pprof/proto_test.go index baa23e9330..4a47111e57 100644 --- a/src/runtime/pprof/proto_test.go +++ b/src/runtime/pprof/proto_test.go @@ -240,13 +240,13 @@ func TestMapping(t *testing.T) { testenv.MustHaveGoRun(t) testenv.MustHaveCGO(t) - prog := "./testdata/mappingtest" + prog := "./testdata/mappingtest/main.go" // GoOnly includes only Go symbols that runtime will symbolize. // Go+C includes C symbols that runtime will not symbolize. for _, traceback := range []string{"GoOnly", "Go+C"} { t.Run("traceback"+traceback, func(t *testing.T) { - cmd := exec.Command("go", "run", prog) + cmd := exec.Command(testenv.GoToolPath(t), "run", prog) if traceback != "GoOnly" { cmd.Env = append(os.Environ(), "SETCGOTRACEBACK=1") } -- 2.50.0