如何访问酶中的prop指定组件

时间:2016-11-07 12:55:22

标签: material-ui jestjs enzyme

这是我的组成部分:

const Cmp = (props) => (
  <List>
    <ListItem primaryText='test' leftCheckbox={<Checkbox onCheck={props.onCheck} />} />
  </List>
);

我想测试复选框的检查。这是我的测试:

it('test', (done) => {
  const handleCheck = () => {
    done();
  }

  const wrapper = shallow(<Cmp onCheck={handleCheck} />);
  wrapper.find('the checkbox').simulate('check');
});

如何找到复选框?

1 个答案:

答案 0 :(得分:0)

您需要找到ListItem元素,然后获取prop并在其上调用simulate

it('test', (done) => {
  const handleCheck = () => {
    done();
  }

  const wrapper = shallow(<Cmp onCheck={handleCheck} />);
  const checkBox = shallow(wrapper.find('ListItem').first().prop('leftCheckbox')())
  checkbox.simulate('check');
});