сделать несколько компонентов мелким ферментом

Можно ли сделать более загар одним компонентом, используя мелкий фермент?

У меня следующий неудачный тест:

  it('should have different ids for different checkboxes', () => {
      const wrapper = shallow(<div><Checkbox {...props} /><Checkbox {...props} /></div>)

    const inputs = wrapper.find('input')
    expect(inputs.length).toBe(1)
  })

person dagda1    schedule 23.11.2016    source источник


Ответы (1)


Я думаю, вы захотите использовать фермент mount вместо shallow. Предполагается, что ваш Checkbox компонент - это то, что даст вам input, который ищет ваш тест. shallow не отображает вложенные компоненты. Как следует из названия, он делает поверхностный рендеринг того, что вы ему передаете. mount, с другой стороны, будет отображать вложенные компоненты.

Дополнительные сведения о mount и shallow см. В их документации: https://github.com/airbnb/enzyme/blob/master/docs/api/mount.md https://github.com/airbnb/enzyme/blob/master/docs/api/shallow.md

При этом, если это модульный тест, то он не должен заботиться о выводе Checkbox. Для Checkbox будут использоваться модульные тесты для проверки его вывода.

person MrOBrian    schedule 23.11.2016