github.com/luciferinlove/gqlgen@v0.17.16-bzc.1/codegen/testserver/followschema/response_extension_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" 9 "github.com/luciferinlove/gqlgen/graphql/handler" 10 "github.com/stretchr/testify/require" 11 ) 12 13 func TestResponseExtension(t *testing.T) { 14 resolvers := &Stub{} 15 resolvers.QueryResolver.Valid = func(ctx context.Context) (s string, e error) { 16 return "Ok", nil 17 } 18 19 srv := handler.NewDefaultServer( 20 NewExecutableSchema(Config{Resolvers: resolvers}), 21 ) 22 23 srv.AroundResponses(func(ctx context.Context, next graphql.ResponseHandler) *graphql.Response { 24 graphql.RegisterExtension(ctx, "example", "value") 25 26 return next(ctx) 27 }) 28 29 c := client.New(srv) 30 31 raw, _ := c.RawPost(`query { valid }`) 32 require.Equal(t, raw.Extensions["example"], "value") 33 }