Я не делал заглушку и все такое, поскольку вы спрашивали, как мутация будет работать с cy.request
в моем другом посте. Я сделал это таким образом, и это просто в принципе работает. Надеюсь, это поможет
Сначала я создал const
export const join_graphQL = (query, extra={}) => {
return `mutation {
${query}(join: { email: "${extra.email}", id: "${extra.id}" }) {
id, name, email
}
}`
};
запрос конфигурации const
export const graphqlReqConfig = (body={}, api=graphQlapi, method='post') => {
return {
method,
body,
url: api,
failOnStatusCode: false
}
};
запрос мутации с cy.request
const mutationQuery = join_graphQL('mutationName', {
email: "email",
id: 38293
});
cy.request(graphqlReqConfig({
query: mutationQuery
})).then((res) => {
const data = res.body.data['mutationName']; // your result
});
надеюсь, это не слишком грязно, чтобы увидеть.
в основном поля должны быть строковыми, например "${extra.email}"
, иначе это приведет к ошибке. Не уверен, как работает graphql, но если я просто сделаю ${extra.email}
, я получу ошибку, которую я забыл, что это была за ошибка.