...
1 package followschema
2
3 import (
4 "context"
5 "testing"
6
7 "github.com/stretchr/testify/require"
8
9 "github.com/99designs/gqlgen/client"
10 "github.com/99designs/gqlgen/graphql"
11 "github.com/99designs/gqlgen/graphql/handler"
12 )
13
14 func TestResponseExtension(t *testing.T) {
15 resolvers := &Stub{}
16 resolvers.QueryResolver.Valid = func(ctx context.Context) (s string, e error) {
17 return "Ok", nil
18 }
19
20 srv := handler.NewDefaultServer(
21 NewExecutableSchema(Config{Resolvers: resolvers}),
22 )
23
24 srv.AroundResponses(func(ctx context.Context, next graphql.ResponseHandler) *graphql.Response {
25 graphql.RegisterExtension(ctx, "example", "value")
26
27 return next(ctx)
28 })
29
30 c := client.New(srv)
31
32 raw, _ := c.RawPost(`query { valid }`)
33 require.Equal(t, raw.Extensions["example"], "value")
34 }
35
View as plain text