ферментный тестовый компонент onClick action - PullRequest
0 голосов
/ 07 февраля 2019

Я хотел бы написать тест в энзимной библиотеке эту строку комментария.Как мне это написать?Я действительно не знаю, как это сделать.

<NavLink to="/payment">
    <MenuItem
        className={classes.menuItem}
        onClick={() => this.props.onMenuItemClicked()} // test this line
            selected={location.pathname === '/payment'} >
            <ListItemIcon
                className={classNames(classes.icon, {
                [classes.iconActive]: location.pathname === '/payment',
            })} >
            <SwapVertIcon />
        </ListItemIcon>
        <ListItemText
            classes={
                 location.pathname === '/payment'
                 ? { primary: classes.primaryActive }
                 : { primary: classes.primary }
             }
             inset
             primary={<FormattedMessage {...messages.paymentItem} />} 
        />
    </MenuItem>
</NavLink>

1 Ответ

0 голосов
/ 07 февраля 2019

Вы можете увидеть функцию обратного вызова с помощью SinonJS и проверить, была ли она вызвана.Вы можете использовать sinon.spy для прослушивания обратного вызова, который будет запущен.А затем проверьте это с помощью функции .called.

Пример:

it('some test', () => {
   const callback = sinon.spy();
   // Mount component and do your stuff
   assert(callback.called)
})

Если ваш компонент уже смонтирован, вы все равно можете установить на него опоры, чтобы вы могли передать этот обратный вызов в качестве опоры и проверки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...