У меня есть следующая функция в тестируемом компоненте React.
renderLoginLink(caption) {
return (
<a href="#" id="lnkAuthenticateWithGoogle" onClick={() => this.props.actions.authenticateWithGoogle()}>
{caption}
</a>
);
}
Когда я запускаю jest --coverage, эта функция помечается.Я написал следующий тест для той функции, которая проходит.
describe('Login', () => {
it('calls renderLoginLink()', () => {
const actions = {
authenticateWithGoogle: jest.fn()
}
const expectedNode = <a href="#" id="lnkAuthenticateWithGoogle" onClick={() => actions}>testCaption</a>
let node = document.createElement('div');
let instance = ReactDOM.render(<Login {...initialState} />, node);
expect(JSON.stringify(instance.renderLoginLink("testCaption"))).toEqual(JSON.stringify(expectedNode));
});
});
Я не уверен, что мне не хватает или какой другой тест я мог бы написать, чтобы удовлетворить шутку.