You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
ReactTestRenderer.act() only works for react-test-renderer. ReactTestUtils.act() only works for react-dom.
Unfortunately due to poor naming, people confuse those two things.
We need to:
Make sure ReactTestRenderer.act() around react-dom updates doesn't silence the warning, and vice versa. (Currently, it does — but you can fix it by using an empty object that's unique per renderer instead of a true value.)
Add a special warning message when a different renderer is "acting" updates. That warning message should suggest that you're supposed to use act() corresponding to the renderer you're using, e.g. react-dom/test-utils for react-dom.
This should fix most cases where people wrap updates in the wrong act.
The text was updated successfully, but these errors were encountered:
via facebook#15319
This solves 2 specific problems -
- using the 'wrong' act() doesn't silence the warning
- using the wrong act logs a warning
It does this by using an empty object on the reconciler as the identity of ReactShouldWarnActingUpdates.current. We also add this check when calling createContainer() to catch the common failure of this happening right in the beginning.
via facebook#15319
This solves 2 specific problems -
- using the 'wrong' act() doesn't silence the warning
- using the wrong act logs a warning
It does this by using an empty object on the reconciler as the identity of ReactShouldWarnActingUpdates.current. We also add this check when calling createContainer() to catch the common failure of this happening right in the beginning.
via facebook#15319
This solves 2 specific problems -
- using the 'wrong' act() doesn't silence the warning
- using the wrong act logs a warning
It does this by using an empty object on the reconciler as the identity of ReactShouldWarnActingUpdates.current. We also add this check when calling createContainer() to catch the common failure of this happening right in the beginning.
make a proper fixture for act()
made fixtures/act for act(). specifically, this lets us tests how act behaves when you use the wrong act() for the wrong renderer. also mvoes dom/../act-dom.html to this fixture.
cleanup fixtures/dom/.gitignore
verify that it 'works' with art+dom
verify that it 'works' with art+test
augh prettier
tweak warning messages
ReactTestRenderer.act()
only works forreact-test-renderer
.ReactTestUtils.act()
only works forreact-dom
.Unfortunately due to poor naming, people confuse those two things.
We need to:
Make sure
ReactTestRenderer.act()
aroundreact-dom
updates doesn't silence the warning, and vice versa. (Currently, it does — but you can fix it by using an empty object that's unique per renderer instead of atrue
value.)Add a special warning message when a different renderer is "acting" updates. That warning message should suggest that you're supposed to use
act()
corresponding to the renderer you're using, e.g.react-dom/test-utils
forreact-dom
.This should fix most cases where people wrap updates in the wrong
act
.The text was updated successfully, but these errors were encountered: