# https://go.dev/issue/51473: to avoid the need for tests to rely on # runtime.GOROOT, 'go test' should run the test with its own GOROOT/bin # at the beginning of $PATH. [short] skip [!GOOS:plan9] env PATH= [GOOS:plan9] env path= go test . [!GOOS:plan9] env PATH=$WORK${/}bin [GOOS:plan9] env path=$WORK${/}bin go test . -- go.mod -- module example go 1.19 -- example_test.go -- package example import ( "os" "os/exec" "path/filepath" "testing" ) func TestGoCommandExists(t *testing.T) { got, err := exec.LookPath("go") if err != nil { t.Fatal(err) } want := filepath.Join(os.Getenv("GOROOT"), "bin", "go" + os.Getenv("GOEXE")) if got != want { t.Fatalf(`exec.LookPath("go") = %q; want %q`, got, want) } } -- $WORK/bin/README.txt -- This directory contains no executables.