2016-07-29 2 views
0

В настоящее время я использую Jest для тестирования своего приложения React. И у меня есть следующий код:React not render checked attribute

var component = TestUtils.renderIntoDocument(<input type="radio" defaultChecked={true}/>) 
var node = ReactDOM.findDOMNode(component) 

console.log(node.outerHTML) 
// Return 
// <input data-reactroot="" type="radio"> 

Почему атрибут проверки не является рендерингом?

+0

http://www.webpackbin.com/E1jvGHB_W –

ответ

0

После того, как я обновил свою реакцию, он работает. Но в тестах внешнийHTML не показывает проверенный атрибут, как говорит Vijay. Таким образом, использовать последующие ожидать:

expect(node.checked).toEqual(true); 
1

Проверяемый атрибут может отсутствовать во внешнемHTML. Но тест для node.checked возвращает true.

import React from 'react'; 
import TestUtils from 'react-addons-test-utils'; 
import ReactDOM from 'react-dom'; 

describe('radio_test',() => { 
    it('outputs default',() => { 
    const component = TestUtils.renderIntoDocument(<input type="radio" defaultChecked={true}/>); 
    const node = ReactDOM.findDOMNode(component); 
    expect(node.type).toEqual('radio'); 
    expect(node.checked).toEqual(true); 
    }); 
}); 
+0

Спасибо за помощь. –