Невозможно следить за свойством componentDidMount, поскольку оно не является функцией; вместо этого дано неопределенное - PullRequest
0 голосов
/ 05 февраля 2020

Я использую jest.spyOn (FormRender.prototype, "componentWillUpdate"), чтобы смоделировать метод жизненного цикла реагирования, но он выдает ошибку. Невозможно следить за свойством componentDidMount, поскольку оно не является функцией; вместо этого дано неопределенное определение. Я застрял здесь, пожалуйста, помогите.

describe("Dynamic Component", () => {
  let wrapper;
  let formRenderInstance;
  beforeEach(() => {
    let settings = {
      ActiveLinkData: {
        pageData: {}
      }
    };
    wrapper = setUp(settings);
    formRenderInstance = wrapper.instance();
  });

  beforeAll((done /* call it or remove it*/) => {
    done(); // calling it
  });

  afterEach(() => {
    let unmountStatus = wrapper.unmount();
  });

  it("Should render without errors", () => {
    /**
     * @Description
     * find node with class App and
     * check length.
     */

    // expect(addUserInstance.greet()).toEqual(`Hello ${store.foo} ${store.bar}!`);
    const component = wrapper.find(".dynamic_component");
    expect(component.length).toBe(1);
  });
  it("componentWillUpdate have been called", () => {
    const spy = jest.spyOn(FormRender.prototype, "componentWillUpdate");
    // to ensure that a mock function got called.
    expect(spy).toHaveBeenCalled();
  });
});
...