| package cq | 
 |  | 
 | import ( | 
 | 	"context" | 
 | 	"os" | 
 | 	"path/filepath" | 
 | 	"testing" | 
 |  | 
 | 	"github.com/bazelbuild/buildtools/build" | 
 | 	"github.com/stretchr/testify/require" | 
 | 	"go.skia.org/infra/go/testutils" | 
 | ) | 
 |  | 
 | func TestWithUpdateCQConfig(t *testing.T) { | 
 |  | 
 | 	ctx := context.Background() | 
 |  | 
 | 	tmp, err := os.MkdirTemp("", "") | 
 | 	require.NoError(t, err) | 
 | 	defer testutils.RemoveAll(t, tmp) | 
 |  | 
 | 	mainStarFile := filepath.Join(tmp, filename) | 
 | 	testutils.WriteFile(t, mainStarFile, fakeConfig) | 
 | 	// We use a directory other than the default "generated", to verify that we | 
 | 	// respect what the caller passed in. | 
 | 	generatedDir := filepath.Join(tmp, "my-generated-configs") | 
 | 	require.NoError(t, os.MkdirAll(generatedDir, os.ModePerm)) | 
 |  | 
 | 	require.NoError(t, WithUpdateCQConfig(ctx, mainStarFile, generatedDir, func(f *build.File) error { | 
 | 		return DeleteBranch(f, "master") | 
 | 	})) | 
 |  | 
 | 	generatedFiles, err := os.ReadDir(generatedDir) | 
 | 	require.NoError(t, err) | 
 | 	generatedFileNames := make([]string, 0, len(generatedFiles)) | 
 | 	for _, f := range generatedFiles { | 
 | 		generatedFileNames = append(generatedFileNames, f.Name()) | 
 | 	} | 
 | 	require.Equal(t, []string{ | 
 | 		"commit-queue.cfg", | 
 | 		"cr-buildbucket.cfg", | 
 | 		"luci-logdog.cfg", | 
 | 		"project.cfg", | 
 | 	}, generatedFileNames) | 
 | } |