Package testenv contains helper functions for skipping tests based on which tools are present in the environment.
func ExitIfSmallMachine ¶
ExitIfSmallMachine emits a helpful diagnostic and calls os.Exit(0) if the current machine is a builder known to have scarce resources.
It should be called from within a TestMain function.
func NeedsGo1Point ¶
NeedsGo1Point skips t if the Go version used to run the test is older than 1.x.
func NeedsGoBuild ¶
func NeedsGoBuild(t Testing)
NeedsGoBuild skips t if the current system can't build programs with “go build” and then run them with os.StartProcess or exec.Command. android, and darwin/arm systems don't have the userspace go build needs to run, and js/wasm doesn't support running subprocesses.
func NeedsGoPackages ¶
func NeedsGoPackages(t Testing)
NeedsGoPackages skips t if the go/packages driver (or 'go' tool) implied by the current process environment is not present in the path.
func NeedsGoPackagesEnv ¶
NeedsGoPackagesEnv skips t if the go/packages driver (or 'go' tool) implied by env is not present in the path.
NeedsTool skips t if the named tool is not present in the path. As a special case, "cgo" means "go" is present and can compile cgo programs.