Skip to content

Commit dccf670

Browse files
committed
Cleans up the tests.
1 parent 2e6d9a8 commit dccf670

File tree

5 files changed

+85
-251
lines changed

5 files changed

+85
-251
lines changed
Original file line numberDiff line numberDiff line change
@@ -1,121 +1,8 @@
11
// Jest Snapshot v1, https://goo.gl/fbAQLP
22

3-
exports[`integration tests browser rendering renders the ErrorComponent 1`] = `
4-
<AsyncComponentProvider
5-
asyncContext={
6-
Object {
7-
"failed": [Function],
8-
"getNextId": [Function],
9-
"getState": [Function],
10-
"resolved": [Function],
11-
}
12-
}
13-
rehydrateState={
14-
Object {
15-
"resolved": Object {},
16-
}
17-
}
18-
>
19-
<AsyncComponent />
20-
</AsyncComponentProvider>
21-
`;
3+
exports[`integration tests server rendering with client rehydration 1`] = `"<div><div><div><span>In Render.</span></div><div>DeferredAsyncBob Loading</div><div><span>In Boundary but outside an AsyncComponent, server render me!</span></div></div></div>"`;
224

23-
exports[`integration tests browser rendering renders the ErrorComponent 2`] = `
24-
<AsyncComponentProvider
25-
asyncContext={
26-
Object {
27-
"failed": [Function],
28-
"getNextId": [Function],
29-
"getState": [Function],
30-
"resolved": [Function],
31-
}
32-
}
33-
rehydrateState={
34-
Object {
35-
"resolved": Object {},
36-
}
37-
}
38-
>
39-
<AsyncComponent>
40-
<ErrorComponent
41-
error={
42-
Object {
43-
"message": "An error occurred",
44-
"stack": "Error: An error occurred
45-
at resolve (/Users/seanmatheson/Development/ctrlplusb/react-async-component/src/__tests__/integration.test.js:149:17)
46-
at getResolver (/Users/seanmatheson/Development/ctrlplusb/react-async-component/src/asyncComponent.js:64:42)
47-
at AsyncComponent.resolveModule (/Users/seanmatheson/Development/ctrlplusb/react-async-component/src/asyncComponent.js:152:14)
48-
at AsyncComponent.render (/Users/seanmatheson/Development/ctrlplusb/react-async-component/src/asyncComponent.js:202:14)
49-
at finishClassComponent (/Users/seanmatheson/Development/ctrlplusb/react-async-component/node_modules/react-dom/cjs/react-dom.development.js:7873:31)
50-
at updateClassComponent (/Users/seanmatheson/Development/ctrlplusb/react-async-component/node_modules/react-dom/cjs/react-dom.development.js:7850:12)
51-
at beginWork (/Users/seanmatheson/Development/ctrlplusb/react-async-component/node_modules/react-dom/cjs/react-dom.development.js:8225:16)
52-
at performUnitOfWork (/Users/seanmatheson/Development/ctrlplusb/react-async-component/node_modules/react-dom/cjs/react-dom.development.js:10224:16)
53-
at workLoop (/Users/seanmatheson/Development/ctrlplusb/react-async-component/node_modules/react-dom/cjs/react-dom.development.js:10288:26)
54-
at HTMLUnknownElement.callCallback (/Users/seanmatheson/Development/ctrlplusb/react-async-component/node_modules/react-dom/cjs/react-dom.development.js:542:14)
55-
at invokeEventListeners (/Users/seanmatheson/Development/ctrlplusb/react-async-component/node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:193:27)
56-
at HTMLUnknownElementImpl._dispatch (/Users/seanmatheson/Development/ctrlplusb/react-async-component/node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:119:9)
57-
at HTMLUnknownElementImpl.dispatchEvent (/Users/seanmatheson/Development/ctrlplusb/react-async-component/node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:82:17)
58-
at HTMLUnknownElementImpl.dispatchEvent (/Users/seanmatheson/Development/ctrlplusb/react-async-component/node_modules/jsdom/lib/jsdom/living/nodes/HTMLElement-impl.js:30:27)
59-
at HTMLUnknownElement.dispatchEvent (/Users/seanmatheson/Development/ctrlplusb/react-async-component/node_modules/jsdom/lib/jsdom/living/generated/EventTarget.js:157:21)
60-
at Object.invokeGuardedCallbackDev (/Users/seanmatheson/Development/ctrlplusb/react-async-component/node_modules/react-dom/cjs/react-dom.development.js:581:16)
61-
at invokeGuardedCallback (/Users/seanmatheson/Development/ctrlplusb/react-async-component/node_modules/react-dom/cjs/react-dom.development.js:438:27)
62-
at renderRoot (/Users/seanmatheson/Development/ctrlplusb/react-async-component/node_modules/react-dom/cjs/react-dom.development.js:10366:7)
63-
at performWorkOnRoot (/Users/seanmatheson/Development/ctrlplusb/react-async-component/node_modules/react-dom/cjs/react-dom.development.js:11014:24)
64-
at performWork (/Users/seanmatheson/Development/ctrlplusb/react-async-component/node_modules/react-dom/cjs/react-dom.development.js:10967:7)
65-
at requestWork (/Users/seanmatheson/Development/ctrlplusb/react-async-component/node_modules/react-dom/cjs/react-dom.development.js:10878:7)
66-
at scheduleWorkImpl (/Users/seanmatheson/Development/ctrlplusb/react-async-component/node_modules/react-dom/cjs/react-dom.development.js:10732:11)
67-
at scheduleWork (/Users/seanmatheson/Development/ctrlplusb/react-async-component/node_modules/react-dom/cjs/react-dom.development.js:10689:12)
68-
at scheduleTopLevelUpdate (/Users/seanmatheson/Development/ctrlplusb/react-async-component/node_modules/react-dom/cjs/react-dom.development.js:11193:5)
69-
at Object.updateContainer (/Users/seanmatheson/Development/ctrlplusb/react-async-component/node_modules/react-dom/cjs/react-dom.development.js:11231:7)
70-
at /Users/seanmatheson/Development/ctrlplusb/react-async-component/node_modules/react-dom/cjs/react-dom.development.js:15226:19
71-
at Object.unbatchedUpdates (/Users/seanmatheson/Development/ctrlplusb/react-async-component/node_modules/react-dom/cjs/react-dom.development.js:11102:12)
72-
at renderSubtreeIntoContainer (/Users/seanmatheson/Development/ctrlplusb/react-async-component/node_modules/react-dom/cjs/react-dom.development.js:15225:17)
73-
at Object.render (/Users/seanmatheson/Development/ctrlplusb/react-async-component/node_modules/react-dom/cjs/react-dom.development.js:15290:12)
74-
at Object.render (/Users/seanmatheson/Development/ctrlplusb/react-async-component/node_modules/enzyme-adapter-react-16/build/ReactSixteenAdapter.js:218:50)
75-
at new ReactWrapper (/Users/seanmatheson/Development/ctrlplusb/react-async-component/node_modules/enzyme/build/ReactWrapper.js:98:16)
76-
at mount (/Users/seanmatheson/Development/ctrlplusb/react-async-component/node_modules/enzyme/build/mount.js:19:10)
77-
at then (/Users/seanmatheson/Development/ctrlplusb/react-async-component/src/__tests__/integration.test.js:162:23)
78-
at <anonymous>",
79-
}
80-
}
81-
>
82-
<div>
83-
An error occurred
84-
</div>
85-
</ErrorComponent>
86-
</AsyncComponent>
87-
</AsyncComponentProvider>
88-
`;
89-
90-
exports[`integration tests browser rendering renders the LoadingComponent 1`] = `
91-
<AsyncComponentProvider
92-
asyncContext={
93-
Object {
94-
"failed": [Function],
95-
"getNextId": [Function],
96-
"getState": [Function],
97-
"resolved": [Function],
98-
}
99-
}
100-
rehydrateState={
101-
Object {
102-
"resolved": Object {},
103-
}
104-
}
105-
>
106-
<AsyncComponent>
107-
<LoadingComponent>
108-
<div>
109-
Loading...
110-
</div>
111-
</LoadingComponent>
112-
</AsyncComponent>
113-
</AsyncComponentProvider>
114-
`;
115-
116-
exports[`integration tests render server and client 1`] = `"<div><div><div><span>In Render.</span></div><div>DeferredAsyncBob Loading</div><div><span>In Boundary but outside an AsyncComponent, server render me!</span></div></div></div>"`;
117-
118-
exports[`integration tests render server and client 2`] = `
5+
exports[`integration tests server rendering with client rehydration 2`] = `
1196
Object {
1207
"errors": Object {},
1218
"resolved": Object {
@@ -126,7 +13,7 @@ Object {
12613
}
12714
`;
12815

129-
exports[`integration tests render server and client 3`] = `
16+
exports[`integration tests server rendering with client rehydration 3`] = `
13017
<AsyncComponentProvider
13118
asyncContext={
13219
Object {
@@ -180,7 +67,7 @@ exports[`integration tests render server and client 3`] = `
18067
</AsyncComponentProvider>
18168
`;
18269

183-
exports[`integration tests render server and client 4`] = `
70+
exports[`integration tests server rendering with client rehydration 4`] = `
18471
<AsyncComponentProvider
18572
asyncContext={
18673
Object {
@@ -243,5 +130,3 @@ exports[`integration tests render server and client 4`] = `
243130
</div>
244131
</AsyncComponentProvider>
245132
`;
246-
247-
exports[`integration tests server rendering should not render errors 1`] = `""`;

src/__tests__/asyncComponent.test.js

+1-14
Original file line numberDiff line numberDiff line change
@@ -5,22 +5,9 @@ import { mount } from 'enzyme'
55

66
import asyncComponent from '../asyncComponent'
77

8-
xdescribe('asyncComponent', () => {
8+
describe('asyncComponent', () => {
99
const errorResolveDelay = 20
1010

11-
it('should handle unmounting ensuring that resolved promises do not call setState', async () => {
12-
const Bob = asyncComponent({
13-
resolve: () => Promise.resolve(() => <div>bob</div>),
14-
})
15-
const setStateSpy = jest.spyOn(Bob.prototype, 'setState')
16-
const renderWrapper = mount(<Bob />)
17-
// Should have 1 initial setState call for mounting
18-
expect(setStateSpy).toHaveBeenCalledTimes(1)
19-
renderWrapper.unmount()
20-
await new Promise(resolve => setTimeout(resolve, 1))
21-
expect(setStateSpy).toHaveBeenCalledTimes(1)
22-
})
23-
2411
describe('in a browser environment', () => {
2512
describe('when an error occurs resolving a component', () => {
2613
it('should render the ErrorComponent', async () => {

0 commit comments

Comments
 (0)