带有复杂道具的单元测试打字稿反应

时间:2018-11-26 08:49:58

标签: reactjs typescript unit-testing enzyme

我有一个属性比较复杂的Prop输入。一切都很好,直到需要编写单元测试为止,在这里看来我不得不重新实现一些最复杂的逻辑才能通过类型检查。我应该如何编写一个简单的模拟?这里有更好的处理打字稿的方法吗?谢谢!

type Updater = (params: UpdaterParams) => void;
interface Props {
  // 20 props here

  getFieldUpdater: (params: GetFieldUpdater) => Updater;
}

class MyComp extends React.Component<Props> {
  foo() {
    const bar = this.props.getFieldUpdater(abc);
    // ...
  }
}

// MyComp.test.tsx
const mockProps = {
  // 20 mock props here
  getFieldUpdater: ???
}
it('foobar', () => {
  const mockComp = enzyme.shallow(<MyComp {...mockProps} />);  // Hard to pass the checks here
});

0 个答案:

没有答案