github.com/aavshr/aws-sdk-go@v1.41.3/models/apis/check_collisions_test.go (about)

     1  //go:build awsinclude
     2  // +build awsinclude
     3  
     4  package apis
     5  
     6  import (
     7  	"os/exec"
     8  	"strings"
     9  	"testing"
    10  )
    11  
    12  func TestCollidingFolders(t *testing.T) {
    13  	m := map[string]struct{}{}
    14  	folders, err := getFolderNames()
    15  	if err != nil {
    16  		t.Error(err)
    17  	}
    18  
    19  	for _, folder := range folders {
    20  		lcName := strings.ToLower(folder)
    21  		if _, ok := m[lcName]; ok {
    22  			t.Errorf("folder %q collision detected", folder)
    23  		}
    24  		m[lcName] = struct{}{}
    25  	}
    26  }
    27  
    28  func getFolderNames() ([]string, error) {
    29  	cmd := exec.Command("git", "ls-tree", "-d", "--name-only", "HEAD")
    30  	output, err := cmd.Output()
    31  	if err != nil {
    32  		return nil, err
    33  	}
    34  
    35  	return strings.Split(string(output), "\n"), nil
    36  }