You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
46 lines
1.6 KiB
46 lines
1.6 KiB
4 months ago
|
testenv: look for "go" executable in path.
|
||
|
|
||
|
--- src/go/build/deps_test.go
|
||
|
+++ src/go/build/deps_test.go
|
||
|
@@ -182,17 +182,17 @@ var pkgDeps = map[string][]string{
|
||
|
"runtime/debug": {"L2", "fmt", "io/ioutil", "os", "time"},
|
||
|
"runtime/pprof": {"L2", "compress/gzip", "context", "encoding/binary", "fmt", "io/ioutil", "os", "text/tabwriter", "time"},
|
||
|
"runtime/trace": {"L0"},
|
||
|
"text/tabwriter": {"L2"},
|
||
|
|
||
|
"testing": {"L2", "flag", "fmt", "internal/race", "os", "runtime/debug", "runtime/pprof", "runtime/trace", "time"},
|
||
|
"testing/iotest": {"L2", "log"},
|
||
|
"testing/quick": {"L2", "flag", "fmt", "reflect", "time"},
|
||
|
- "internal/testenv": {"L2", "OS", "flag", "testing", "syscall"},
|
||
|
+ "internal/testenv": {"L2", "OS", "os/exec", "flag", "testing", "syscall"},
|
||
|
|
||
|
// L4 is defined as L3+fmt+log+time, because in general once
|
||
|
// you're using L3 packages, use of fmt, log, or time is not a big deal.
|
||
|
"L4": {
|
||
|
"L3",
|
||
|
"fmt",
|
||
|
"log",
|
||
|
"time",
|
||
|
--- src/internal/testenv/testenv.go
|
||
|
+++ src/internal/testenv/testenv.go
|
||
|
@@ -43,16 +43,19 @@ func HasGoBuild() bool {
|
||
|
switch runtime.GOOS {
|
||
|
case "android", "nacl":
|
||
|
return false
|
||
|
case "darwin":
|
||
|
if strings.HasPrefix(runtime.GOARCH, "arm") {
|
||
|
return false
|
||
|
}
|
||
|
}
|
||
|
+ if _, err := exec.LookPath("go"); err != nil {
|
||
|
+ return false
|
||
|
+ }
|
||
|
return true
|
||
|
}
|
||
|
|
||
|
// MustHaveGoBuild checks that the current system can build programs with ``go build''
|
||
|
// and then run them with os.StartProcess or exec.Command.
|
||
|
// If not, MustHaveGoBuild calls t.Skip with an explanation.
|
||
|
func MustHaveGoBuild(t testing.TB) {
|
||
|
if os.Getenv("GO_GCFLAGS") != "" {
|