INNER CODE UNIT · Go
runBatsFile
asdf-vm/asdf · cmd/asdf/main_test.go:120
func runBatsFile(t *testing.T, dir, filename string) {
t.Helper()
cmd := exec.Command("bats", "--verbose-run", fmt.Sprintf("../../test/%s", filename))
// Capture stdout and stderr
var stdout strings.Builder
var stderr strings.Builder
cmd.Stdout = &stdout
cmd.Stderr = &stderr
// Add dir to asdf test variables
cmd.Env = execute.MergeWithCurrentEnv(map[string]string{"BASE_DIR": dir, "ASDF_BIN": dir})
err := cmd.Run()
if err != nil {
// If command fails print both stderr and stdout
t.Log("stdout:", stdout.String())