Update ReactUpdates-test#28061
Conversation
|
Comparing: b2d6371...d6fc098 Critical size changesIncludes critical production bundles, as well as any change greater than 2%:
Significant size changesIncludes any change greater than 0.2%: Expand to show
|
| componentDidUpdate() { | ||
| updateCount++; | ||
| } | ||
| it('should batch state when updating state twice', async () => { |
There was a problem hiding this comment.
While I was here, I rewote any of the class component tests that don't rely on class component features (like setState callbacks) to function components.
| updateCount++; | ||
| } | ||
| React.useLayoutEffect(() => { | ||
| Scheduler.log('Commit'); |
There was a problem hiding this comment.
I also ported any tests tracking logs/ops to use the newer Scheduler.log test helpers to modernize them.
| child.forceUpdate(); | ||
| }); | ||
|
|
||
| expect.assertions(6); |
There was a problem hiding this comment.
Added this, since there's wasn't anything confirming that the expects were actually running.
| ReactDOM.render(<App />, document.createElement('div')); | ||
| }); | ||
|
|
||
| it('unstable_batchedUpdates should return value from a callback', () => { |
There was a problem hiding this comment.
Deleted, since this is only testing unstable_batchedUpdates. The test exists in ReactLegacyUpdates now.
| expect(result).toEqual(42); | ||
| }); | ||
|
|
||
| it('unmounts and remounts a root in the same batch', () => { |
There was a problem hiding this comment.
Deleted, because createRoot does not support rendering to an unmounted root. The .render version exists in ReactLegacyUpdates now, and we have a test for the error rendering to an unmounted container elsewhere.
| }); | ||
| expect(container.textContent).toBe('goodbye'); | ||
| expect(mounts).toBe(1); | ||
| expect(onChangeCalled).toBeTruthy(); |
There was a problem hiding this comment.
Added this because I was worried the change handler wasn't being called, which I think would still pass the above assertions.
| expect(onChangeCalled).toBeTruthy(); | ||
| }); | ||
|
|
||
| it('mounts and unmounts are sync even in a batch', () => { |
There was a problem hiding this comment.
Renamed this, since in the new root they are batched.
| expect(ops).toEqual(['Hello', '']); | ||
| }); | ||
|
|
||
| it( |
There was a problem hiding this comment.
Deleted all these legacy mode tests, they're in ReactLegacyUpdates.
| }); | ||
| }); | ||
|
|
||
| expect(subscribers.length).toBe(limit); |
There was a problem hiding this comment.
Added this because there was nothing confirming things actually rendered.
jackpope
left a comment
There was a problem hiding this comment.
Walked through changes with Rick. Some additional opportunities to switch to scheduler log but overall looks good
- react/react#28250 - react/react#28225 - react/react#28123 - react/react#28240 - react/react#28239 - react/react#28245 - react/react#28244 - react/react#28238 - react/react#28235 - react/react#28221 - react/react#28215 - react/react#28214 - react/react#28213 - react/react#28212 - react/react#28211 - react/react#28247 - react/react#28210 - react/react#28186 - react/react#28232 - react/react#28169 - react/react#28177 - react/react#28170 - react/react#28168 - react/react#28122 - react/react#27982 - react/react#28217 - react/react#28223 - react/react#28208 - react/react#28209 - react/react#28200 - react/react#28199 - react/react#28198 - react/react#28197 - react/react#28196 - react/react#28194 - react/react#28192 - react/react#28191 - react/react#28182 - react/react#28181 - react/react#28180 - react/react#28178 - react/react#28201 - react/react#28176 - react/react#28162 - react/react#28131 - react/react#28190 - react/react#28172 - react/react#28171 - react/react#28173 - react/react#28174 - react/react#28175 - react/react#28136 - react/react#28135 - react/react#28134 - react/react#28133 - react/react#28132 - react/react#28130 - react/react#28202 - react/react#28102 - react/react#28161 - react/react#28193 - react/react#28195 - react/react#28189 - react/react#28160 - react/react#28096 - react/react#28183 - react/react#28125 - react/react#28157 - react/react#28115 - react/react#28124 - react/react#28163 - react/react#28164 - react/react#28150 - react/react#28159 - react/react#28069 - react/react#28110 - react/react#28148 - react/react#28116 - react/react#28099 - react/react#28100 - react/react#28147 - react/react#28128 - react/react#28126 - react/react#28139 - react/react#28140 - react/react#28141 - react/react#28142 - react/react#28113 - react/react#28129 - react/react#28114 - react/react#28053 - react/react#28091 - react/react#28087 - react/react#28112 - react/react#28086 - react/react#28101 - react/react#28106 - react/react#28117 - react/react#28118 - react/react#28105 - react/react#27883 - react/react#28111 - react/react#28095 - react/react#28108 - react/react#28090 - react/react#28089 - react/react#28076 - react/react#28074 - react/react#28103 - react/react#28098 - react/react#28097 - react/react#28068 - react/react#28093 - react/react#28094 - react/react#28073 - react/react#28084 - react/react#28063 - react/react#28085 - react/react#28083 - react/react#28065 - react/react#28061 - react/react#28077 - react/react#28075 - react/react#28078 - react/react#28050 - react/react#28011 - react/react#28055 - react/react#28066 - react/react#28067 - react/react#28010 - react/react#27993 - react/react#28052 - react/react#28060 - react/react#28059 - react/react#28034 - react/react#28033 - react/react#28004 - react/react#28051 - react/react#28012 - react/react#28001 - react/react#28002 - react/react#27995 - react/react#28006 - react/react#28005 - react/react#28007 - react/react#28008 - react/react#28009 - react/react#28000 - react/react#28003 - react/react#27997 - react/react#27240 - react/react#27977 - react/react#27940 - react/react#27939 - react/react#28090 - react/react#28089 - react/react#28076 - react/react#28074 - react/react#28103 - react/react#28098 - react/react#28097 - react/react#28068 - react/react#28093 - react/react#28094 - react/react#28073 - react/react#28084 - react/react#28063 - react/react#28085 - react/react#28083 - react/react#28065 - react/react#28061 - react/react#28077 - react/react#28075 - react/react#28078 - react/react#28050 - react/react#28011 - react/react#28055 - react/react#28066 - react/react#28067 - react/react#28010 - react/react#27993 - react/react#28052 - react/react#28060 - react/react#28059 - react/react#28034 - react/react#28033 - react/react#28004 - react/react#28051 - react/react#28012 - react/react#28001 - react/react#28002 - react/react#27995 - react/react#28006 - react/react#28005 - react/react#28007 - react/react#28008 - react/react#28009 - react/react#28000 - react/react#28003 - react/react#27997 - react/react#27240 - react/react#27977 - react/react#27940 - react/react#27939
Updates React from 60a927d04 to 2bc7d336a Also updates aliases for `react.shared-subset` to `react.react-server` ### React upstream changes - react/react#28250 - react/react#28225 - react/react#28123 - react/react#28240 - react/react#28239 - react/react#28245 - react/react#28244 - react/react#28238 - react/react#28235 - react/react#28221 - react/react#28215 - react/react#28214 - react/react#28213 - react/react#28212 - react/react#28211 - react/react#28247 - react/react#28210 - react/react#28186 - react/react#28232 - react/react#28169 - react/react#28177 - react/react#28170 - react/react#28168 - react/react#28122 - react/react#27982 - react/react#28217 - react/react#28223 - react/react#28208 - react/react#28209 - react/react#28200 - react/react#28199 - react/react#28198 - react/react#28197 - react/react#28196 - react/react#28194 - react/react#28192 - react/react#28191 - react/react#28182 - react/react#28181 - react/react#28180 - react/react#28178 - react/react#28201 - react/react#28176 - react/react#28162 - react/react#28131 - react/react#28190 - react/react#28172 - react/react#28171 - react/react#28173 - react/react#28174 - react/react#28175 - react/react#28136 - react/react#28135 - react/react#28134 - react/react#28133 - react/react#28132 - react/react#28130 - react/react#28202 - react/react#28102 - react/react#28161 - react/react#28193 - react/react#28195 - react/react#28189 - react/react#28160 - react/react#28096 - react/react#28183 - react/react#28125 - react/react#28157 - react/react#28115 - react/react#28124 - react/react#28163 - react/react#28164 - react/react#28150 - react/react#28159 - react/react#28069 - react/react#28110 - react/react#28148 - react/react#28116 - react/react#28099 - react/react#28100 - react/react#28147 - react/react#28128 - react/react#28126 - react/react#28139 - react/react#28140 - react/react#28141 - react/react#28142 - react/react#28113 - react/react#28129 - react/react#28114 - react/react#28053 - react/react#28091 - react/react#28087 - react/react#28112 - react/react#28086 - react/react#28101 - react/react#28106 - react/react#28117 - react/react#28118 - react/react#28105 - react/react#27883 - react/react#28111 - react/react#28095 - react/react#28108 - react/react#28090 - react/react#28089 - react/react#28076 - react/react#28074 - react/react#28103 - react/react#28098 - react/react#28097 - react/react#28068 - react/react#28093 - react/react#28094 - react/react#28073 - react/react#28084 - react/react#28063 - react/react#28085 - react/react#28083 - react/react#28065 - react/react#28061 - react/react#28077 - react/react#28075 - react/react#28078 - react/react#28050 - react/react#28011 - react/react#28055 - react/react#28066 - react/react#28067 - react/react#28010 - react/react#27993 - react/react#28052 - react/react#28060 - react/react#28059 - react/react#28034 - react/react#28033 - react/react#28004 - react/react#28051 - react/react#28012 - react/react#28001 - react/react#28002 - react/react#27995 - react/react#28006 - react/react#28005 - react/react#28007 - react/react#28008 - react/react#28009 - react/react#28000 - react/react#28003 - react/react#27997 - react/react#27240 - react/react#27977 - react/react#27940 - react/react#27939 - react/react#28090 - react/react#28089 - react/react#28076 - react/react#28074 - react/react#28103 - react/react#28098 - react/react#28097 - react/react#28068 - react/react#28093 - react/react#28094 - react/react#28073 - react/react#28084 - react/react#28063 - react/react#28085 - react/react#28083 - react/react#28065 - react/react#28061 - react/react#28077 - react/react#28075 - react/react#28078 - react/react#28050 - react/react#28011 - react/react#28055 - react/react#28066 - react/react#28067 - react/react#28010 - react/react#27993 - react/react#28052 - react/react#28060 - react/react#28059 - react/react#28034 - react/react#28033 - react/react#28004 - react/react#28051 - react/react#28012 - react/react#28001 - react/react#28002 - react/react#27995 - react/react#28006 - react/react#28005 - react/react#28007 - react/react#28008 - react/react#28009 - react/react#28000 - react/react#28003 - react/react#27997 - react/react#27240 - react/react#27977 - react/react#27940 - react/react#27939 Closes NEXT-2331
## Overview These tests are important for `ReactDOM.render`, so instead of just re-writing them to `createRoot` and losing coverage: - Moved the `.render` tests to `ReactLegacyUpdates` - Re-wrote the tests in `ReactUpdates` to use `createRoot` - Remove `unstable_batchedUpdates` from `ReactUpdates` In a future PR, when I flag `batchedUpdates` with a Noop, I can add the gate to just the tests in `ReactLegacyUpdates`.
## Overview These tests are important for `ReactDOM.render`, so instead of just re-writing them to `createRoot` and losing coverage: - Moved the `.render` tests to `ReactLegacyUpdates` - Re-wrote the tests in `ReactUpdates` to use `createRoot` - Remove `unstable_batchedUpdates` from `ReactUpdates` In a future PR, when I flag `batchedUpdates` with a Noop, I can add the gate to just the tests in `ReactLegacyUpdates`. DiffTrain build for commit 8bb6ee1.
Overview
These tests are important for
ReactDOM.render, so instead of just re-writing them tocreateRootand losing coverage:.rendertests toReactLegacyUpdatesReactUpdatesto usecreateRootunstable_batchedUpdatesfromReactUpdatesIn a future PR, when I flag
batchedUpdateswith a Noop, I can add the gate to just the tests inReactLegacyUpdates.