mirror of
https://github.com/facebook/react.git
synced 2025-11-01 09:12:30 +00:00
Make ReactIdentity-test less fragile with respect to root IDs.
This commit is contained in:
committed by
Paul O’Shannessy
parent
3ffbb4d096
commit
bae6100ae8
@@ -18,6 +18,15 @@ describe('ReactIdentity', function() {
|
||||
reactComponentExpect = require('reactComponentExpect');
|
||||
});
|
||||
|
||||
var idExp = /^\.reactRoot\[\d+\](.*)$/;
|
||||
function checkId(child, expectedId) {
|
||||
var actual = idExp.exec(child.id);
|
||||
var expected = idExp.exec(expectedId);
|
||||
expect(actual).toBeTruthy();
|
||||
expect(expected).toBeTruthy();
|
||||
expect(actual[1]).toEqual(expected[1]);
|
||||
}
|
||||
|
||||
it('should allow keyed objects to express identity', function() {
|
||||
var instance =
|
||||
<div>
|
||||
@@ -30,8 +39,8 @@ describe('ReactIdentity', function() {
|
||||
React.renderComponent(instance, document.createElement('div'));
|
||||
var node = instance.getDOMNode();
|
||||
reactComponentExpect(instance).toBeDOMComponentWithChildCount(2);
|
||||
expect(node.childNodes[0].id).toEqual('.reactRoot[0].:0:first');
|
||||
expect(node.childNodes[1].id).toEqual('.reactRoot[0].:0:second');
|
||||
checkId(node.childNodes[0], '.reactRoot[0].:0:first');
|
||||
checkId(node.childNodes[1], '.reactRoot[0].:0:second');
|
||||
});
|
||||
|
||||
it('should allow key property to express identity', function() {
|
||||
@@ -44,8 +53,8 @@ describe('ReactIdentity', function() {
|
||||
React.renderComponent(instance, document.createElement('div'));
|
||||
var node = instance.getDOMNode();
|
||||
reactComponentExpect(instance).toBeDOMComponentWithChildCount(2);
|
||||
expect(node.childNodes[0].id).toEqual('.reactRoot[0].:apple');
|
||||
expect(node.childNodes[1].id).toEqual('.reactRoot[0].:banana');
|
||||
checkId(node.childNodes[0], '.reactRoot[0].:apple');
|
||||
checkId(node.childNodes[1], '.reactRoot[0].:banana');
|
||||
});
|
||||
|
||||
it('should use instance identity', function() {
|
||||
@@ -66,18 +75,12 @@ describe('ReactIdentity', function() {
|
||||
React.renderComponent(instance, document.createElement('div'));
|
||||
var node = instance.getDOMNode();
|
||||
reactComponentExpect(instance).toBeDOMComponentWithChildCount(3);
|
||||
expect(node.childNodes[0].id)
|
||||
.toEqual('.reactRoot[0].:wrap1');
|
||||
expect(node.childNodes[0].firstChild.id)
|
||||
.toEqual('.reactRoot[0].:wrap1.:squirrel');
|
||||
expect(node.childNodes[1].id)
|
||||
.toEqual('.reactRoot[0].:wrap2');
|
||||
expect(node.childNodes[1].firstChild.id)
|
||||
.toEqual('.reactRoot[0].:wrap2.:bunny');
|
||||
expect(node.childNodes[2].id)
|
||||
.toEqual('.reactRoot[0].:2');
|
||||
expect(node.childNodes[2].firstChild.id)
|
||||
.toEqual('.reactRoot[0].:2.:chipmunk');
|
||||
checkId(node.childNodes[0], '.reactRoot[0].:wrap1');
|
||||
checkId(node.childNodes[0].firstChild, '.reactRoot[0].:wrap1.:squirrel');
|
||||
checkId(node.childNodes[1], '.reactRoot[0].:wrap2');
|
||||
checkId(node.childNodes[1].firstChild, '.reactRoot[0].:wrap2.:bunny');
|
||||
checkId(node.childNodes[2], '.reactRoot[0].:2');
|
||||
checkId(node.childNodes[2].firstChild, '.reactRoot[0].:2.:chipmunk');
|
||||
});
|
||||
|
||||
it('should let restructured components retain their uniqueness', function() {
|
||||
|
||||
Reference in New Issue
Block a user