Это код, который тестируется
class CSVButton extends React.Component {
render() {
return (
<div className="CSVButton">
{this.props.auth.includes("tutor") ? (
<div className="BlueButton">
{" "}
<a
href={
'some Link'
}
>
<input type="button" value="Nutzer CSV" />
</a>
</div>
) : (
undefined
)}
</div>
);
}
}
Тестовый скрипт
it("renders admin without an error", () => {
const onClick = jest.fn();
render(
<CSVButton
onClick={onClick}
/>,
container
);
const CSVButtonTest = container.querySelector("input");
CSVButtonTest.dispatchEvent(new MouseEvent("click", { bubbles: true }));
expect(onClick).toHaveBeenCalled();
});
Я получаю это сообщение об ошибке
Expected number of calls: >= 1
Received number of calls: 0
Когда я регистрирую макет функция выполняется, но щелчок не «заканчивается» в ожидаемом. Я не знаю, почему событие щелчка мышью не работает. Я использовал тот же метод в другом компоненте, и он работал.