Это мой первый модульный тест, и я застрял на тестировании события мыши. У меня есть div, в котором при нажатии мыши я получаю offsetX и offsetY и сохраняю это значение в состоянии.
<div
className={`outputCanvasHolder ${
this.props.output.selection === "CLICK"
? "showOutput"
: "hideOutput"
}`}
onMouseDown={e => {
this.handleMouseDown(e.nativeEvent)
}}
onMouseMove={e => {
this.handleMouseMove(e.nativeEvent)
}}
onMouseUp={e => {
this.handleMouseUp(e.nativeEvent)
}}
>My div</div>
handleMouseDown = primitive => {
this.setState(
{
dragStartX: primitive.offsetX,
dragStartY: primitive.offsetY
}
)
}
Теперь я хочу протестировать его с помощью jest
it("mouse down event", () => {
props.output.selection = "CLICK"
const wrapper = shallow(<ReAlignedImageCanvas {...props} />)
const canvasDiv = wrapper.find(".showOutput")
console.log(canvasDiv.debug())
canvasDiv.simulate("mousedown", {
target: {
name: "dragStartX",
value: 100
}
})
expect(wrapper.find(".test"))
expect(wrapper.find(".test-100").length).to.equal(1)
})
Но я получаю сообщение об ошибке TypeError: не удается прочитать свойство offsetX из undefined. Подскажите, пожалуйста, как протестировать это событие