Я застрял в одном из моих компонентов React из-за одного вызова библиотеки перевода 'response-simple-i18n'
В моем компоненте React мне нужно импортировать одну функцию из эта библиотека, чтобы использовать ее, как показано ниже:
import { useI18n } from 'react-simple-i18n/lib/'
const MyComponent = ({ data }) => {
const { t } = useI18n()
return(
<div>{t('MyComponent.hello') }</div>
)
}
и если я пытаюсь проверить с Jest (простой снимок)
import React from 'react'
import { shallow } from 'enzyme'
import MyComponent from './MyComponent'
import { useI18n } from 'react-simple-i18n'
const fakeData = { ... }
jest.mock('react-simple-i18n', () => {
useI18n: () => { t: 'test' }
})
let wrapper = shallow(<MyComponent data={fakeData}/>)
describe('MyComponent', () => {
it('should render MyComponent correctly', () => {
expect(wrapper).toMatchSnapshot();
})
})
И я получаю ошибку от Jest:
TypeError: Невозможно деструктурировать свойство t
из 'undefined' или 'null'.
Как я могу точно посмеяться над своей функцией useI18n?