github.com/grpc-ecosystem/grpc-gateway/v2@v2.19.1/protoc-gen-openapiv2/internal/genopenapi/naming_test.go (about) 1 package genopenapi 2 3 import "testing" 4 5 func TestNaming(t *testing.T) { 6 type expectedNames struct { 7 fqn, legacy, simple string 8 } 9 messageNameToExpected := map[string]expectedNames{ 10 ".A": {"A", "A", "A"}, 11 ".a.B.C": {"a.B.C", "aBC", "B.C"}, 12 ".a.D.C": {"a.D.C", "aDC", "D.C"}, 13 ".a.E.F": {"a.E.F", "aEF", "a.E.F"}, 14 ".b.E.F": {"b.E.F", "bEF", "b.E.F"}, 15 ".c.G.H": {"c.G.H", "GH", "H"}, 16 } 17 18 allMessageNames := make([]string, 0, len(messageNameToExpected)) 19 for msgName := range messageNameToExpected { 20 allMessageNames = append(allMessageNames, msgName) 21 } 22 23 t.Run("fqn", func(t *testing.T) { 24 uniqueNames := resolveNamesFQN(allMessageNames) 25 for _, msgName := range allMessageNames { 26 expected := messageNameToExpected[msgName].fqn 27 actual := uniqueNames[msgName] 28 if expected != actual { 29 t.Errorf("fqn unique name %q does not match expected name %q", actual, expected) 30 } 31 } 32 }) 33 t.Run("legacy", func(t *testing.T) { 34 uniqueNames := resolveNamesLegacy(allMessageNames) 35 for _, msgName := range allMessageNames { 36 expected := messageNameToExpected[msgName].legacy 37 actual := uniqueNames[msgName] 38 if expected != actual { 39 t.Errorf("legacy unique name %q does not match expected name %q", actual, expected) 40 } 41 } 42 }) 43 t.Run("simple", func(t *testing.T) { 44 uniqueNames := resolveNamesSimple(allMessageNames) 45 for _, msgName := range allMessageNames { 46 expected := messageNameToExpected[msgName].simple 47 actual := uniqueNames[msgName] 48 if expected != actual { 49 t.Errorf("simple unique name %q does not match expected name %q", actual, expected) 50 } 51 } 52 }) 53 }