...
1 package validator_test
2
3 import (
4 "testing"
5
6 "github.com/stretchr/testify/require"
7 "github.com/vektah/gqlparser"
8 "github.com/vektah/gqlparser/ast"
9 "github.com/vektah/gqlparser/parser"
10 "github.com/vektah/gqlparser/validator"
11 )
12
13 func TestExtendingNonExistantTypes(t *testing.T) {
14 s := gqlparser.MustLoadSchema(
15 &ast.Source{Name: "graph/schema.graphqls", Input: `
16 extend type User {
17 id: ID!
18 }
19
20 extend type Product {
21 upc: String!
22 }
23
24 union _Entity = Product | User
25
26 extend type Query {
27 entity: _Entity
28 }
29 `, BuiltIn: false},
30 )
31
32 q, err := parser.ParseQuery(&ast.Source{Name: "ff", Input: `{
33 entity {
34 ... on User {
35 id
36 }
37 }
38 }`})
39 require.Nil(t, err)
40 require.Nil(t, validator.Validate(s, q))
41 }
42
View as plain text