mirror of
https://github.com/facebook/react.git
synced 2025-11-01 09:12:30 +00:00
Merge pull request #3025 from sebmarkbage/fixrendercallback
Always trigger an update when a callback is enqueued.
This commit is contained in:
@@ -111,6 +111,7 @@ var ReactUpdateQueue = {
|
||||
} else {
|
||||
internalInstance._pendingCallbacks = [callback];
|
||||
}
|
||||
enqueueUpdate(internalInstance);
|
||||
},
|
||||
|
||||
/**
|
||||
|
||||
@@ -15,10 +15,12 @@ var React;
|
||||
var ReactInstanceMap;
|
||||
var ReactTestUtils;
|
||||
|
||||
var mocks;
|
||||
var reactComponentExpect;
|
||||
|
||||
describe('ReactComponent', function() {
|
||||
beforeEach(function() {
|
||||
mocks = require('mocks');
|
||||
React = require('React');
|
||||
ReactInstanceMap = require('ReactInstanceMap');
|
||||
ReactTestUtils = require('ReactTestUtils');
|
||||
@@ -270,4 +272,16 @@ describe('ReactComponent', function() {
|
||||
var instance = ReactTestUtils.renderIntoDocument(element);
|
||||
expect(instance.isMounted()).toBeTruthy();
|
||||
});
|
||||
|
||||
it('fires the callback after a component is rendered', function() {
|
||||
var callback = mocks.getMockFunction();
|
||||
var container = document.createElement('div');
|
||||
React.render(<div />, container, callback);
|
||||
expect(callback.mock.calls.length).toBe(1);
|
||||
React.render(<div className="foo" />, container, callback);
|
||||
expect(callback.mock.calls.length).toBe(2);
|
||||
React.render(<span />, container, callback);
|
||||
expect(callback.mock.calls.length).toBe(3);
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user