Sinon 间谍错误:尝试包装测试 Reactjs 时已经包装好的 useEffect

问题描述

我正在尝试为 useEffect 创建一个 sinon spy 以检查它是否被正确调用

  assert(function() {
    const sandBox = sinon.createSandBox();
    const spy = sandBox.spy(React,'useEffect');
    const wrapper = Enzyme.mount(React.createElement(Component));
    const firstCall = {...spy.getCall(0)?.args[0]}
    sandBox.restore();
    if(!firstCall) return false
    return firstCall;
  }(),'Should have a useEffect defined')

但是如果我运行测试两次,我会收到以下错误尝试包装已经包装的 useEffect

当我运行类似的测试但监视 useState 时不会发生这种情况。

为什么它也不适用于 useEffect

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...