2015-02-17 3 views
2

Я использую Jest для тестирования приложения ReactJS. Как можно проверить, есть ли в контроллере представления необходимые дочерние компоненты.Как проверить, имеет ли компонент дочерний компонент

Например, вот пример из контроллеров отображения визуализации функции:

// App.js 
render: function() { 
    var table; 
    if (this.state.showResults) { 
    table = <Table {...this.state} /> 
    } 

    return (
    <div> 
     <Form /> 
     {table} 
) 
} 

Для HTML элементов, что-то вроде будет делать:

button = TestUtils.findRenderedDOMComponentWithTag AppElement, 'button' 

Как я могу сделать то же самое для Компоненты формы или таблицы?

Спасибо!

ответ

3

Doh ... так что ответ находитRenderedComponentWithType.

Во-первых, мне нужен класс компонента:

Form = require('Form.react.js'); 

Тогда я прошел это в качестве аргумента, например:

form = TestUtils.findRenderedComponentWithType(AppElement, Form); 

где, конечно

AppElement = TestUtils.renderIntoDocument(<App />) 
Смежные вопросы