В соответствии с документацией по тестированию модулей реакции:
act ()
Чтобы подготовить компонент для утверждений, оберните код, который отображает его и выполняет обновления внутри акта () вызова. Это приближает ваш тест к тому, как работает React в браузере.
Но тест работает отлично в обоих случаях:
Без act ()
it('Should return some text', () => {
render(<TestComponent />, container);
expect(container.textContent).toBe('some text');
});
С act ()
it('Should return some text', () => {
act(() => {
render(<TestComponent />, container);
});
expect(container.textContent).toBe('some text');
})
Вопросы: Что именно делает act () и когда кто-то должен его использовать?