-
- Notifications
You must be signed in to change notification settings - Fork 2k
Open
Description
Current behavior
Getting error Enzyme Internal Error: unknown node with tag 2
from mounting Suspense component with child component that throws promise:
import React, { Suspense } from "react"; const Message = props => <div>Hello Enzyme!</div> const Loading = props => <div>loading...</div> const Thrower = props => { throw new Promise(resolve => { setTimeout(resolve, 1000); }); }; describe("integration with Suspense component", () => { test("should render Message component", () => { const wrapper = mount( <Suspense fallback={<Loading />}> <Message /> </Suspense> ); expect(wrapper.find(Message)).toExist(); // ✅ passes }); test("should render Loading component", () => { const wrapper = mount( <Suspense fallback={<Loading />}> <Thrower /> </Suspense> ); expect(wrapper.find(Loading)).toExist(); // ❌ Enzyme Internal Error: unknown node with tag 2 }); })trace:
Enzyme Internal Error: unknown node with tag 2 20 | 21 | test("should render Loading component", () => { > 22 | const wrapper = mount( | ^ 23 | <Suspense fallback={<Loading />}> 24 | <Thrower /> 25 | </Suspense> at _toTree (node_modules/enzyme-adapter-react-16/src/ReactSixteenAdapter.js:254:13) at toTree (node_modules/enzyme-adapter-react-16/src/ReactSixteenAdapter.js:267:12) at childrenToTree (node_modules/enzyme-adapter-react-16/src/ReactSixteenAdapter.js:227:14) at Array.map (<anonymous>) at map (node_modules/enzyme-adapter-react-16/src/ReactSixteenAdapter.js:269:27) at childrenToTree (node_modules/enzyme-adapter-react-16/src/ReactSixteenAdapter.js:248:19) at toTree (node_modules/enzyme-adapter-react-16/src/ReactSixteenAdapter.js:267:12) at childrenToTree (node_modules/enzyme-adapter-react-16/src/ReactSixteenAdapter.js:169:19) at Object.toTree [as getNode] (node_modules/enzyme-adapter-react-16/src/ReactSixteenAdapter.js:448:11) at new getNode (node_modules/enzyme/src/ReactWrapper.js:117:44) at mount (node_modules/enzyme/src/mount.js:10:10) at Object.mount (__tests__/Suspense.spec.js:22:21) Expected behavior
No error
Your environment
API
- shallow
- mount
- render
Version
| library | version |
|---|---|
| enzyme | 3.10.0 |
| jest-enzyme | 7.0.2 |
| react | 16.8.6 |
| react-dom | 16.8.6 |
| react-test-renderer | 16.8.6 |
| adapter (below) | 1.14.0 |
Adapter
- enzyme-adapter-react-16
- enzyme-adapter-react-16.3
- enzyme-adapter-react-16.2
- enzyme-adapter-react-16.1
- enzyme-adapter-react-15
- enzyme-adapter-react-15.4
- enzyme-adapter-react-14
- enzyme-adapter-react-13
- enzyme-adapter-react-helper
- others ( )
OlgaKuksa, amowu, Arnarkari93, dotexe0, tilwinjoy and 1 more