mirror of
https://github.com/hanzoai/react.git
synced 2026-09-24 17:02:27 +00:00
[tests] assertLog before act in ReactCompositeComponentState (#28758)
Fixes tests blocking https://github.com/facebook/react/pull/28737
This commit is contained in:
@@ -152,21 +152,6 @@ describe('ReactCompositeComponent-state', () => {
|
||||
root.render(<TestComponent />);
|
||||
});
|
||||
|
||||
await act(() => {
|
||||
root.render(<TestComponent nextColor="green" />);
|
||||
});
|
||||
|
||||
await act(() => {
|
||||
testComponentInstance.setFavoriteColor('blue');
|
||||
});
|
||||
await act(() => {
|
||||
testComponentInstance.forceUpdate(
|
||||
testComponentInstance.peekAtCallback('forceUpdate'),
|
||||
);
|
||||
});
|
||||
|
||||
root.unmount();
|
||||
|
||||
assertLog([
|
||||
// there is no state when getInitialState() is called
|
||||
'getInitialState undefined',
|
||||
@@ -198,6 +183,13 @@ describe('ReactCompositeComponent-state', () => {
|
||||
'componentDidUpdate-prevState orange',
|
||||
'setState-yellow yellow',
|
||||
'commit yellow',
|
||||
]);
|
||||
|
||||
await act(() => {
|
||||
root.render(<TestComponent nextColor="green" />);
|
||||
});
|
||||
|
||||
assertLog([
|
||||
'componentWillReceiveProps-start yellow',
|
||||
// setState({color:'green'}) only enqueues a pending state.
|
||||
'componentWillReceiveProps-end yellow',
|
||||
@@ -216,6 +208,13 @@ describe('ReactCompositeComponent-state', () => {
|
||||
'componentDidUpdate-prevState yellow',
|
||||
'setState-receiveProps green',
|
||||
'commit green',
|
||||
]);
|
||||
|
||||
await act(() => {
|
||||
testComponentInstance.setFavoriteColor('blue');
|
||||
});
|
||||
|
||||
assertLog([
|
||||
// setFavoriteColor('blue')
|
||||
'shouldComponentUpdate-currentState green',
|
||||
'shouldComponentUpdate-nextState blue',
|
||||
@@ -226,6 +225,13 @@ describe('ReactCompositeComponent-state', () => {
|
||||
'componentDidUpdate-prevState green',
|
||||
'setFavoriteColor blue',
|
||||
'commit blue',
|
||||
]);
|
||||
await act(() => {
|
||||
testComponentInstance.forceUpdate(
|
||||
testComponentInstance.peekAtCallback('forceUpdate'),
|
||||
);
|
||||
});
|
||||
assertLog([
|
||||
// forceUpdate()
|
||||
'componentWillUpdate-currentState blue',
|
||||
'componentWillUpdate-nextState blue',
|
||||
@@ -234,7 +240,12 @@ describe('ReactCompositeComponent-state', () => {
|
||||
'componentDidUpdate-prevState blue',
|
||||
'forceUpdate blue',
|
||||
'commit blue',
|
||||
// unmountComponent()
|
||||
]);
|
||||
|
||||
root.unmount();
|
||||
|
||||
assertLog([
|
||||
// unmount()
|
||||
// state is available within `componentWillUnmount()`
|
||||
'componentWillUnmount blue',
|
||||
]);
|
||||
@@ -375,13 +386,13 @@ describe('ReactCompositeComponent-state', () => {
|
||||
await act(() => {
|
||||
root.render(<Parent />);
|
||||
});
|
||||
|
||||
assertLog(['parent render one', 'child render one']);
|
||||
await act(() => {
|
||||
root.render(<Parent />);
|
||||
});
|
||||
|
||||
assertLog([
|
||||
'parent render one',
|
||||
'child render one',
|
||||
'parent render one',
|
||||
'child componentWillReceiveProps one',
|
||||
'child componentWillReceiveProps done one',
|
||||
|
||||
Reference in New Issue
Block a user