blob: 46b27e464271ff19696fa8f1f5029bacb6a5ab84 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
package handler
import (
"context"
"time"
"github.com/vektah/gqlgen/graphql"
"github.com/vektah/gqlgen/neelance/query"
"github.com/vektah/gqlgen/neelance/schema"
)
type executableSchemaStub struct {
}
var _ graphql.ExecutableSchema = &executableSchemaStub{}
func (e *executableSchemaStub) Schema() *schema.Schema {
return schema.MustParse(`
schema { query: Query }
type Query { me: User! }
type User { name: String! }
`)
}
func (e *executableSchemaStub) Query(ctx context.Context, op *query.Operation) *graphql.Response {
return &graphql.Response{Data: []byte(`{"name":"test"}`)}
}
func (e *executableSchemaStub) Mutation(ctx context.Context, op *query.Operation) *graphql.Response {
return graphql.ErrorResponse(ctx, "mutations are not supported")
}
func (e *executableSchemaStub) Subscription(ctx context.Context, op *query.Operation) func() *graphql.Response {
return func() *graphql.Response {
time.Sleep(50 * time.Millisecond)
select {
case <-ctx.Done():
return nil
default:
return &graphql.Response{
Data: []byte(`{"name":"test"}`),
}
}
}
}
|