Merge pull request #3427 from zpao/full-page-dom-components
Ensure FullPageComponents are treated as DOM components
This commit is contained in:
commit
dacd4db1fa
|
@ -33,6 +33,7 @@ function createFullPageComponent(tag) {
|
||||||
var elementFactory = ReactElement.createFactory(tag);
|
var elementFactory = ReactElement.createFactory(tag);
|
||||||
|
|
||||||
var FullPageComponent = ReactClass.createClass({
|
var FullPageComponent = ReactClass.createClass({
|
||||||
|
tagName: tag.toUpperCase(),
|
||||||
displayName: 'ReactFullPageComponent' + tag,
|
displayName: 'ReactFullPageComponent' + tag,
|
||||||
|
|
||||||
componentWillUnmount: function() {
|
componentWillUnmount: function() {
|
||||||
|
|
|
@ -206,4 +206,28 @@ describe('ReactTestUtils', function() {
|
||||||
|
|
||||||
expect(console.warn.calls.length).toBe(0);
|
expect(console.warn.calls.length).toBe(0);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('should support injected wrapper components as DOM components', function() {
|
||||||
|
var injectedDOMComponents = [
|
||||||
|
'button',
|
||||||
|
'form',
|
||||||
|
'iframe',
|
||||||
|
'img',
|
||||||
|
'input',
|
||||||
|
'option',
|
||||||
|
'select',
|
||||||
|
'textarea',
|
||||||
|
'html',
|
||||||
|
'head',
|
||||||
|
'body'
|
||||||
|
];
|
||||||
|
|
||||||
|
injectedDOMComponents.forEach(function(type) {
|
||||||
|
var component = ReactTestUtils.renderIntoDocument(
|
||||||
|
React.createElement(type)
|
||||||
|
);
|
||||||
|
expect(component.tagName).toBe(type.toUpperCase());
|
||||||
|
expect(ReactTestUtils.isDOMComponent(component)).toBe(true);
|
||||||
|
});
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in New Issue