@Artem641

Как вызвать кастомный hook внутри провайдера в тесте?

Всем привет. Подскажите, как можно вызвать кастомный хук внутри провайдера в тесте?

Здесь получаю ошибку, что useTodo можно вызвать только внутри провайдера
test('todo count', () => {
  const { result } = renderHook(() => useTodo())
})


// context
export const useTodo = () => {
  const context = useContext(TodoContext)

  if (!context) {
    throw new Error('useTodo must be used within a TodoProvider')
  }

  return context
}
  • Вопрос задан
  • 41 просмотр
Пригласить эксперта
Ответы на вопрос 1
Alexandroppolus
@Alexandroppolus
кодир
У функции renderHook есть второй параметр-обьект, там можно задать всякие настройки. Тебе надо в поле wrapper воткнуть компонент, в котором есть провайдер этого контекста.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы