Я хочу проверить теги graphql на нашем клиенте реакции по схеме, созданной на нашем сервере graphql. Эта проверка будет выполняться как часть нашей тестовой установки и предупредит нас, если в определении схемы graphql будут критические изменения.
Пока я выкачал schema.json с сервера, используя apollo schema:download --endpoint=http...
Теперь я хотел бы проверить следующую мутацию:
import gql from 'graphql-tag';
const LOGIN_MUTATION = gql`
mutation LoginMutation($email: String!, $password: String!) {
login(email: $email, password: $password) {
id
accessToken
refreshToken
expires
}
}
`;
с таким тестом:
import { GraphQLSchema } from 'graphql';
import { validate } from 'graphql/validation';
import * as schemaJson from '../../../../../backend/schema.json';
const schema = new GraphQLSchema(schemaJson as any);
import { LOGIN_MUTATION } from './Auth';
test("validate login mutation", assert => {
const errors = validate(schema, LOGIN_MUTATION);
const isValid = !errors.length;
expect(isValid).toBe(true);
});
Это дает мне ошибку: Query root type must be provided
Как я могу сравнить тег graphql с данной схемой json?