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  }