Проверить конкретную функцию внутри компонента
У меня есть компонент Table, который возвращает некоторые элементы jsx и содержит некоторые функции. Я уже тестировал элементы jsx в компоненте, теперь я хочу попробовать функции.
Функции объявлены как:
const fn = prop => {
return (
<div>Something</div>
);
};
Я попытался получить доступ к ним через экземпляр смонтированного компонента, но я получаю ошибки:
TypeError: Невозможно прочитать свойство 'fn' с нулевым значением And: TypeError: component.fn не является функцией
Первая ошибка возникает, когда я вызываю функцию renderDate как:
const date = moment('01/01/2019', "DD/MM/YYYY");
const row = {
value: date
}
component = mount(getComponent())
component.instance().renderDate(row)
И второй результат происходит, когда я вызываю функцию renderDate без instance() компонента, как:
const date = moment('01/01/2019', "DD/MM/YYYY");
const row = {
value: date
}
component = mount(getComponent())
component.renderDate(row)
И функция renderDate внутри компонента:
const renderDate = row => {
return (
<div>
{row.value}
</div>
);
};
Я ожидал бы выполнить эту функцию, но вместо этого она не обнаружит существование функций, объявленных как это.
Кто-нибудь имеет какие-либо идеи о том, как вызывать функции, как показано в Jest и Enzyme? Я искал в документации фермента о вызове функций в компонентах, но ни один из примеров не работал для меня.
Заранее спасибо!