pass tests and flow
Sunil Pai committed
May 28, 2019 at 20:21 UTC
9e87e654f5bd223ef2c5fc920bd778ca2eb31521
2 files changed
+32
-25
src/__tests__/inspectedElementContext-test.js
+28
-17
@@ -8,6 +8,7 @@ import type Store from 'src/devtools/store';
8
describe('InspectedElementContext', () => {
9
let React;
10
let ReactDOM;
11
+ let act;
12
let TestRenderer: ReactTestRenderer;
13
let bridge: Bridge;
14
let store: Store;
@@ -19,6 +20,20 @@ describe('InspectedElementContext', () => {
20
let StoreContext;
21
let TreeContextController;
22
23
+ // a version of actAsync that *doesn't* recursively flush timers
24
+ async function actAsync(cb: () => *): Promise<void> {
25
+
26
+ // $FlowFixMe Flow doesn't know about "await act()" yet
27
+ await act(async () => {
28
+ await cb();
29
+ });
30
+ // $FlowFixMe Flow doesn't know about "await act()" yet
31
+ await act(async () => {
32
+ jest.runOnlyPendingTimers();
33
+ });
34
+ }
35
+
36
+
37
beforeEach(() => {
38
utils = require('./utils');
39
utils.beforeEachProfiling();
@@ -29,6 +44,7 @@ describe('InspectedElementContext', () => {
44
45
React = require('react');
46
ReactDOM = require('react-dom');
47
+ act = require('react-dom/test-utils').act
48
TestRenderer = utils.requireTestRenderer();
49
50
BridgeContext = require('src/devtools/views/context').BridgeContext;
@@ -84,7 +100,7 @@ describe('InspectedElementContext', () => {
100
return null;
101
}
102
87
- await utils.actAsync(
103
+ await actAsync(
104
() =>
105
TestRenderer.create(
106
<Contexts
@@ -95,8 +111,7 @@ describe('InspectedElementContext', () => {
111
<Suspender target={example} />
112
</React.Suspense>
113
</Contexts>
98
- ),
99
- 3
114
+ )
115
);
116
expect(didFinish).toBe(true);
117
@@ -120,7 +135,7 @@ describe('InspectedElementContext', () => {
135
return null;
136
}
137
123
- await utils.actAsync(
138
+ await actAsync(
139
() =>
140
TestRenderer.create(
141
<Contexts
@@ -131,17 +146,16 @@ describe('InspectedElementContext', () => {
146
<Suspender target={example} />
147
</React.Suspense>
148
</Contexts>
134
- ),
135
- 3
149
+ )
150
);
151
expect(inspectedElement).toMatchSnapshot('2: initial render');
152
139
- await utils.actAsync(() =>
153
+ await actAsync(() =>
154
ReactDOM.render(<Example foo={2} bar="def" />, container)
155
);
156
157
inspectedElement = null;
144
- await utils.actAsync(
158
+ await actAsync(
159
() =>
160
TestRenderer.create(
161
<Contexts
@@ -152,8 +166,7 @@ describe('InspectedElementContext', () => {
166
<Suspender target={example} />
167
</React.Suspense>
168
</Contexts>
155
- ),
156
- 1
169
+ )
170
);
171
expect(inspectedElement).toMatchSnapshot('2: updated state');
172
@@ -194,7 +207,7 @@ describe('InspectedElementContext', () => {
207
targetRenderCount = 0;
208
209
let renderer;
197
- await utils.actAsync(
210
+ await actAsync(
211
() =>
212
(renderer = TestRenderer.create(
213
<Contexts
@@ -205,8 +218,7 @@ describe('InspectedElementContext', () => {
218
<Suspender target={id} />
219
</React.Suspense>
220
</Contexts>
208
- )),
209
- 3
221
+ ))
222
);
223
expect(targetRenderCount).toBe(1);
224
expect(inspectedElement).toMatchSnapshot('2: initial render');
@@ -215,7 +227,7 @@ describe('InspectedElementContext', () => {
227
228
targetRenderCount = 0;
229
inspectedElement = null;
218
- await utils.actAsync(
230
+ await actAsync(
231
() =>
232
renderer.update(
233
<Contexts
@@ -226,15 +238,14 @@ describe('InspectedElementContext', () => {
238
<Suspender target={id} />
239
</React.Suspense>
240
</Contexts>
229
- ),
230
- 1
241
+ )
242
);
243
expect(targetRenderCount).toBe(0);
244
expect(inspectedElement).toEqual(initialInspectedElement);
245
246
targetRenderCount = 0;
247
237
- await utils.actAsync(() =>
248
+ await actAsync(() =>
249
ReactDOM.render(
250
<Wrapper>
251
<Target foo={2} bar="def" />
src/__tests__/ownersListContext-test.js
+4
-8
@@ -92,8 +92,7 @@ describe('OwnersListContext', () => {
92
<Suspender owner={parent} />
93
</React.Suspense>
94
</Contexts>
95
- ),
96
- 3
95
+ )
96
);
97
expect(didFinish).toBe(true);
98
@@ -106,8 +105,7 @@ describe('OwnersListContext', () => {
105
<Suspender owner={firstChild} />
106
</React.Suspense>
107
</Contexts>
109
- ),
110
- 3
108
+ )
109
);
110
expect(didFinish).toBe(true);
111
@@ -156,8 +154,7 @@ describe('OwnersListContext', () => {
154
<Suspender owner={firstChild} />
155
</React.Suspense>
156
</Contexts>
159
- ),
160
- 3
157
+ )
158
);
159
expect(didFinish).toBe(true);
160
@@ -198,8 +195,7 @@ describe('OwnersListContext', () => {
195
<Suspender owner={grandparent} />
196
</React.Suspense>
197
</Contexts>
201
- ),
202
- 3
198
+ )
199
);
200
expect(didFinish).toBe(true);
201