blob: a6278ca749e6020aef49cc4db6b4dd2a9fc72406 [file] [log] [blame]
# 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.