type ToolReplacement … // RunToolScriptTest kicks off a set of script tests runs for // a tool of some sort (compiler, linker, etc). The expectation // is that we'll be called from the top level cmd/X dir for tool X, // and that instead of executing the install tool X we'll use the // test binary instead. func RunToolScriptTest(t *testing.T, repls []ToolReplacement, scriptsdir string, fixReadme bool) { … } // RunTests kicks off one or more script-based tests using the // specified engine, running all test files that match pattern. // This function adapted from Russ's rsc.io/script/scripttest#Run // function, which was in turn forked off cmd/go's runner. func RunTests(t *testing.T, ctx context.Context, engine *script.Engine, env []string, pattern string) { … } func initScriptDirs(t testing.TB, s *script.State) { … } func tempEnvName() string { … } // scriptCC runs the platform C compiler. func scriptCC(cmdExec script.Cmd, ccexe string) script.Cmd { … }