public void ChildFieldType()
{
var gql = MemContext.CreateDefaultContext();
var results = gql.ExecuteQuery("{ __type(name: \"User\") { fields { name, type { name, kind, ofType { name, kind } } } } }");
Test.DeepEquals(results,
@"{
__type: {
fields: [
{ name: 'id', type: { name: null, kind: 'NON_NULL', ofType: { name: 'Int', kind: 'SCALAR' } } },
{ name: 'name', type: { name: 'String', kind: 'SCALAR', ofType: null } },
{ name: 'account', type: { name: 'Account', kind: 'OBJECT', ofType: null } },
{ name: 'nullRef', type: { name: 'NullRef', kind: 'OBJECT', ofType: null } },
{ name: 'total', type: { name: null, kind: 'NON_NULL', ofType: { name: 'Int', kind: 'SCALAR' } } },
{ name: 'accountPaid', type: { name: null, kind: 'NON_NULL', ofType: { name: 'Boolean', kind: 'SCALAR' } } },
{ name: 'abc', type: { name: 'String', kind: 'SCALAR', ofType: null } },
{ name: 'sub', type: { name: 'Sub', kind: 'OBJECT', ofType: null } },
{ name: '__typename', type: { name: 'String', kind: 'SCALAR', ofType: null } }
]
}
}");
}