github.com/luciferinlove/gqlgen@v0.17.16-bzc.1/codegen/testserver/followschema/validtypes_test.go (about) 1 package followschema 2 3 import ( 4 "context" 5 "testing" 6 7 "github.com/luciferinlove/gqlgen/client" 8 "github.com/luciferinlove/gqlgen/graphql/handler" 9 "github.com/stretchr/testify/require" 10 ) 11 12 func TestValidType(t *testing.T) { 13 resolvers := &Stub{} 14 resolvers.QueryResolver.ValidType = func(ctx context.Context) (validType *ValidType, e error) { 15 return &ValidType{ 16 DifferentCase: "new", 17 DifferentCaseOld: "old", 18 }, nil 19 } 20 21 c := client.New(handler.NewDefaultServer(NewExecutableSchema(Config{Resolvers: resolvers}))) 22 23 t.Run("fields with differing cases can be distinguished", func(t *testing.T) { 24 var resp struct { 25 ValidType struct { 26 New string `json:"differentCase"` 27 Old string `json:"different_case"` 28 } 29 } 30 err := c.Post(`query { validType { differentCase, different_case } }`, &resp) 31 require.NoError(t, err) 32 33 require.Equal(t, "new", resp.ValidType.New) 34 require.Equal(t, "old", resp.ValidType.Old) 35 }) 36 }