Merge pull request #2084 from kimagure/unmount-comp-error

Error when unmountComponentAtNode receives non-node
This commit is contained in:
Sebastian Markbåge
2014-10-23 12:53:40 -07:00
2 changed files with 20 additions and 0 deletions
+8
View File
@@ -459,6 +459,14 @@ var ReactMount = {
'componentDidUpdate.'
);
invariant(
container && (
container.nodeType === ELEMENT_NODE_TYPE ||
container.nodeType === DOC_NODE_TYPE
),
'unmountComponentAtNode(...): Target container is not a DOM element.'
);
var reactRootID = getReactRootID(container);
var component = instancesByReactRootID[reactRootID];
if (!component) {
@@ -30,6 +30,18 @@ describe('ReactMount', function() {
});
});
describe('unmountComponentAtNode', function() {
it('throws when given a non-node', function() {
var nodeArray = document.getElementsByTagName('div');
expect(function() {
React.unmountComponentAtNode(nodeArray);
}).toThrow(
'Invariant Violation: unmountComponentAtNode(...): Target container ' +
'is not a DOM element.'
);
});
});
it('throws when given a string', function() {
expect(function() {
ReactTestUtils.renderIntoDocument('div');