首页 > 解决方案 > Jest中带有参数的测试函数作为匿名函数

问题描述

我有一个函数,它接受从匿名函数返回的参数。我试图测试那个匿名函数,但它没有被覆盖。

this.validateAllocations(() => {
        this.submitData();
        if (this.state.shed=== "recurring") {
          this.props.history.push("/ga/recommend");
        } else {
          this.props.history.push("/ga/recommend");
        }
      });

这是我所拥有的功能,我尝试了很多jest.spyOn但没有被覆盖。在覆盖率报告中。

it("test with low balCheck and amount less than 500", () => {
      const validateAllocations = jest.spyOn(
        shallowInstance,
        "validateAllocations"
      );
      validateAllocations.bind({
        state: shallowWrapper.state(),
        setState: jest.spyOn(shallowInstance, "setState"),
      })();
      expect(validateAllocations).toHaveBeenCalledTimes(1);
    });

shallowInstance是组件的一个实例。

标签: reactjsjestjs

解决方案


推荐阅读