// Copyright 2018 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. // This file contains testing utilities copied from $GOROOT/src/internal/testenv/testenv.go. package gccgoimporter import ( "runtime" "testing" toolstestenv "golang.org/x/tools/internal/testenv" ) // HasExec reports whether the current system can start new processes // using os.StartProcess or (more commonly) exec.Command. func HasExec() bool { return toolstestenv.HasExec() } // MustHaveExec checks that the current system can start new processes // using os.StartProcess or (more commonly) exec.Command. // If not, MustHaveExec calls t.Skip with an explanation. func MustHaveExec(t *testing.T) { if !HasExec() { t.Skipf("skipping test: cannot exec subprocess on %s/%s", runtime.GOOS, runtime.GOARCH) } } var testenv = struct { MustHaveExec func(*testing.T) }{ MustHaveExec: MustHaveExec, }