require("enzyme-adapter-react-16") raises react-dom/server exception
| library | version
| ---------------- | -------
| Enzyme | 3.3.0
| React | 16.3.2
I found lots of issues saying that this problem should go away if you start using the same react/react-dom/react-test-renderer version. It's all 16.3.2 in my case but simple require("enzyme-adapter-react-16") raises exception:
TypeError: Cannot read property 'ReactCurrentOwner' of undefined
at /Users/1999/proj/node_modules/react-dom/cjs/react-dom-server.node.development.js:96:40
at Object.<anonymous> (/Users/1999/proj/node_modules/react-dom/cjs/react-dom-server.node.development.js:2767:5)
at Runtime._execModule (/Users/1999/proj/node_modules/jest-runtime/build/index.js:448:13)
at Runtime.requireModule (/Users/1999/proj/node_modules/jest-runtime/build/index.js:265:14)
at Runtime.requireModuleOrMock (/Users/1999/proj/node_modules/jest-runtime/build/index.js:337:19)
at Object.<anonymous> (/Users/1999/proj/node_modules/react-dom/server.node.js:6:20)
at Runtime._execModule (/Users/1999/proj/node_modules/jest-runtime/build/index.js:448:13)
at Runtime.requireModule (/Users/1999/proj/node_modules/jest-runtime/build/index.js:265:14)
at Runtime.requireModuleOrMock (/Users/1999/proj/node_modules/jest-runtime/build/index.js:337:19)
at Object.<anonymous> (/Users/1999/proj/node_modules/react-dom/server.js:3:18)
at Runtime._execModule (/Users/1999/proj/node_modules/jest-runtime/build/index.js:448:13)
at Runtime.requireModule (/Users/1999/proj/node_modules/jest-runtime/build/index.js:265:14)
at Runtime.requireModuleOrMock (/Users/1999/proj/node_modules/jest-runtime/build/index.js:337:19)
at Object.<anonymous> (/Users/1999/proj/node_modules/enzyme-adapter-react-16/build/ReactSixteenAdapter.js:17:15)
at Runtime._execModule (/Users/1999/proj/node_modules/jest-runtime/build/index.js:448:13)
at Runtime.requireModule (/Users/1999/proj/node_modules/jest-runtime/build/index.js:265:14)
at Runtime.requireModuleOrMock (/Users/1999/proj/node_modules/jest-runtime/build/index.js:337:19)
at Object.<anonymous> (/Users/1999/proj/node_modules/enzyme-adapter-react-16/build/index.js:2:18)
at Runtime._execModule (/Users/1999/proj/node_modules/jest-runtime/build/index.js:448:13)
at Runtime.requireModule (/Users/1999/proj/node_modules/jest-runtime/build/index.js:265:14)
at Runtime.requireModuleOrMock (/Users/1999/proj/node_modules/jest-runtime/build/index.js:337:19)
at Object.it (/Users/1999/proj/src/assets/js/mechanics/choice-sentence/index.spec.jsx:14:23)
at Object.asyncFn (/Users/1999/proj/node_modules/jest-jasmine2/build/jasmine_async.js:82:37)
at resolve (/Users/1999/proj/node_modules/jest-jasmine2/build/queue_runner.js:52:12)
at new Promise (<anonymous>)
at mapper (/Users/1999/proj/node_modules/jest-jasmine2/build/queue_runner.js:39:19)
at promise.then (/Users/1999/proj/node_modules/jest-jasmine2/build/queue_runner.js:73:82)
at <anonymous>
at process._tickCallback (internal/process/next_tick.js:188:7)
My bad. The story behind this bug was that I tried to run preact enzyme tests with preact enzyme adapter. This turned to be a bad idea since adapter for preact is a bit raw, so I installed react/react-dom and enzyme adapter for react@16. But I forgot to remove jest module mappings:

After I did this everything works like a charm.
One more possible cause for this problem which happened to me recently: you're using adapter for React version 16 while your project is using React version 15. Double check that your React and enzyme adapter versions match.
Most helpful comment
One more possible cause for this problem which happened to me recently: you're using adapter for React version 16 while your project is using React version 15. Double check that your React and enzyme adapter versions match.