github.com/maeglindeveloper/gqlgen@v0.13.1-0.20210413081235-57808b12a0a0/example/selection/selection_test.go (about) 1 package selection 2 3 import ( 4 "testing" 5 6 "github.com/99designs/gqlgen/client" 7 "github.com/99designs/gqlgen/graphql/handler" 8 "github.com/stretchr/testify/require" 9 ) 10 11 func TestSelection(t *testing.T) { 12 c := client.New(handler.NewDefaultServer(NewExecutableSchema(Config{Resolvers: &Resolver{}}))) 13 14 query := `{ 15 events { 16 selection 17 collected 18 19 ... on Post { 20 message 21 sent 22 } 23 24 ...LikeFragment 25 } 26 } 27 fragment LikeFragment on Like { reaction sent } 28 ` 29 30 var resp struct { 31 Events []struct { 32 Selection []string 33 Collected []string 34 35 Message string 36 Reaction string 37 Sent string 38 } 39 } 40 c.MustPost(query, &resp) 41 42 require.Equal(t, []string{ 43 "selection as selection", 44 "collected as collected", 45 "inline fragment on Post", 46 "named fragment LikeFragment on Like", 47 }, resp.Events[0].Selection) 48 49 require.Equal(t, []string{ 50 "selection as selection", 51 "collected as collected", 52 "reaction as reaction", 53 "sent as sent", 54 }, resp.Events[0].Collected) 55 }