Тестирование условных правил makeStyles с энзимом и шуткой - PullRequest
1 голос
/ 05 марта 2020

Это минимальный пример (который я только что сделал, чтобы уточнить мой вопрос)

const useStyles = makeStyles({
    root: {
        width: 500,
        height: 500,
        background: ({isRead}) => isRead ? '#EA1D250D' : 'white', // <= I want to test this
    }
});

function Notification(props) {
    const classes = useStyles();
    return <div className={classes.root}/>
}

Как я могу проверить обе ветви в background правиле makeStyles?

Я пытался получить к нему доступ с помощью оболочки:

    it('Renders correctly for unread messages', () => {
        const wrapper = mount(<Notification isRead={true}/>);

        // Now here how can I expect `background` to be `#EA1D250D`?
        expect(wrapper.find('div').first().props().style).to.have.property('background', '#EA1D250D');
    });

В приведенном выше тесте свойство style на самом деле undefined, поскольку стили добавляются через className

Так есть ли способ получить доступ к правилам стиля makeStyles для тестирования?

...