Я создал модульный тест для мутации apollo с MockProvider. Ошибка выброса: ошибка! Больше не было поддельных ответов на запрос: mutation createPost ($ id: ID !, $ title: String, $ content: String, $ authorId: ID!) {
createPost (id: $ id, title: $ title, content: $ content, authorId: $ authorId) {
Я бы
заглавие
содержание
автор {
название
}
}
}
, переменные: {"id": "1558321438699", "title": "", "content": ""}
У меня есть созданный unitest:
const mocks = [
{
request: {
query: CREATE_POST,
variables: {
id: '1557799396370',
title: 'title123',
content: 'content123',
authorId: '1557377599679'
}
},
result: {
data: {
createPost: {
id: '1557799396370',
title: 'title123',
content: 'content123',
author: {
name: 'rinto'
}
}
}
}
}
];
const props = {
history: {
push: jest.fn()
},
handleCloseModal: jest.fn()
};
describe('Test CreatePost', () => {
it('Testing CreatePost final state:', async () => {
const renderComponent = mount(
<MockedProvider mocks={mocks} addTypename={false} >
<CreatePost {...props} />
</MockedProvider>
);
renderComponent.find(Form).simulate('submit', {
preventDefault: jest.fn()
});
await waitForExpect(() => {
renderComponent.update();
console.log('renderComponent', renderComponent.debug());
expect(renderComponent.find(Form).exists()).toBeTruthy();
});
});
});
мутация graphql:
export const CREATE_POST = gql`
mutation createPost($id: ID!, $title: String, $content: String, $authorId: ID!) {
createPost(id: $id, title: $title, content: $content, authorId: $authorId) {
id
title
content
author {
name
}
}
}
`;