У меня есть React Component
с именем SavedVariants
, который отображает semantic-ui-react
Pagination
компонент, и я пытаюсь проверить, имеет ли Pagination
правильное число totalPages
:
https://github.com/Semantic-Org/Semantic-UI-React/blob/2c7134128925dd831de85011e3eb0ec382ba7f73/src/addons/Pagination/Pagination.js#L64
Вот как выглядят мои jest-enzyme
тесты:
describe('Testing SavedVariants pagination and search', () => {
let wrapper
beforeEach(() => {
const store = configureStore()(STATE1)
wrapper = mount(<SavedVariants store={store} match={{ params: {} }} />)
})
// Testing of the backend - based variant search functionality
test('number of pages is correctly rendered in pagination', () => {
const paginationComponent = wrapper.find('Pagination')
console.log(paginationComponent.props.totalPages)
expect(paginationComponent.props.totalPages).toEqual(1)
wrapper.setProps({ 'totalPages': 3 })
expect(paginationComponent.props.totalPages).toEqual(3)
})
})
paginationComponent.props.totalPages
оказывается undefined
. Если я запускаю console.log(paginationComponent)
, он печатает ReactWrapper { length: 0 }
. Итак, как я могу получить доступ к semantic-ui-react
Pagination
в тестах?
Интересно, что при запуске wrapper.setState({ 'totalPages': 3 })
выдается ошибка:
TypeError: Невозможно прочитать свойство 'setState' из null
Итак, теперь мне интересно, смонтирован ли мой SavedVariants
компонент ... Но это было бы очень неправильно, поскольку в противном случае ошибки не отображаются.