我有考试
. . . .
let onSubmit: jest.Mock<any, any>
. . .
fireEvent.submit(form)
. . .
expect(onSubmit).toHaveBeenCalled()
该组件已将onSubmit处理函数传递给它:
const Start: FC<StartProps> = ({ onSubmit }) => {
此测试一切正常。现在,我想添加react-hook-form来验证用户输入。但是返回值之一是handleSubmit,它进行验证并调用我的提交处理程序。问题在于Jest在模拟正在传递给组件的onSubmit,但是表单调用了react-hook-form中从useForm传递回来的handlesubmit。基本上,由于react-hook-form,我希望Jest模拟组件内部的函数。可能有某种迹象表明该模拟函数已被调用?