File: check_collisions_test.go

package info (click to toggle)
golang-github-aws-aws-sdk-go 1.49.0-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 312,636 kB
  • sloc: makefile: 120
file content (36 lines) | stat: -rw-r--r-- 659 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
//go:build awsinclude
// +build awsinclude

package apis

import (
	"os/exec"
	"strings"
	"testing"
)

func TestCollidingFolders(t *testing.T) {
	m := map[string]struct{}{}
	folders, err := getFolderNames()
	if err != nil {
		t.Error(err)
	}

	for _, folder := range folders {
		lcName := strings.ToLower(folder)
		if _, ok := m[lcName]; ok {
			t.Errorf("folder %q collision detected", folder)
		}
		m[lcName] = struct{}{}
	}
}

func getFolderNames() ([]string, error) {
	cmd := exec.Command("git", "ls-tree", "-d", "--name-only", "HEAD")
	output, err := cmd.Output()
	if err != nil {
		return nil, err
	}

	return strings.Split(string(output), "\n"), nil
}