github.com/tobiash/gqlgen@v0.5.1/codegen/testserver/element.go (about) 1 package testserver 2 3 import ( 4 "context" 5 "errors" 6 "time" 7 ) 8 9 type Element struct { 10 ID int 11 } 12 13 type ElementResolver struct{} 14 15 func (r *ElementResolver) Query_path(ctx context.Context) ([]Element, error) { 16 return []Element{{1}, {2}, {3}, {4}}, nil 17 } 18 19 func (r *ElementResolver) Element_child(ctx context.Context, obj *Element) (Element, error) { 20 return Element{obj.ID * 10}, nil 21 } 22 23 func (r *ElementResolver) Element_error(ctx context.Context, obj *Element, message *string) (bool, error) { 24 // A silly hack to make the result order stable 25 time.Sleep(time.Duration(obj.ID) * 10 * time.Millisecond) 26 27 if message != nil { 28 return true, errors.New(*message) 29 } 30 return false, nil 31 }