Как проверить запрос на получение в componentDidMount получить от реквизита? с шуткой, энзимом, синоном - PullRequest
0 голосов
/ 14 апреля 2020

Я пытался написать тесты для моих реактивных компонентов, но шут и фермент ужасны

Я уже получил кучу ошибок, связанных с этим

Это не работает

describe('<NewsListContainer /> componentDidMount', () => {
  it('calls requestDefault', () => {
    const spy = sinon(<Provider store={store}>{Component.prototype}</Provider>, 'requestDefault');
    const wrapper = mount(<Provider store={store}><Component /></Provider>);
    wrapper.instance().requestDefault;
    expect(spy).toHaveBeenCalled();
  });
})

Мой компонент

  class Component extends React.Component<Props> {
  componentDidMount() {
    const { args } = this.props;
    requestDefault(args);
  }
  
  render() {
    const { args } = this.props;
    const react = args.map((list: any) => {
      return (
        <Content
          {list.content}
        />
    )});
    return (
      <div className="bar">
      {react}
      </div>
    );
  }
}

const mapStateToProps = (state: AppStateType) => ({
  arg: state.list.arg,
  arg: state.list.arg,
  arg: state.list.arg,
  arg: state.list.arg,
  arg: state.list.arg,
  requestDefault: requestDefault(state),
});

export default connect(mapStateToProps, {
  requestDefault: requestDefault,
})(Component);

Подскажите пожалуйста, как правильно написать?

...