Closed joegasewicz closed 1 year ago
I had the same issue and this is what solved it for me:
global.TextEncoder = require('util').TextEncoder;
global.TextDecoder = require('util').TextDecoder;
const Adapter = require('@cfaester/enzyme-adapter-react-18').default;
import Enzyme from 'enzyme';
global.URLSearchParams = require('url').URLSearchParams;
Enzyme.configure({adapter: new Adapter()});
Using require instead of import
is important.
Thanks guys. I'll take a quick look.
Hello everyone. Sorry for getting back so late.
Unfortunately JSDOM appears to have removed Node API's when you activate it, since version 17. This is a problem for us, since we depend on ReactDOM.renderToStaticMarkup()
to accurately create a render tree for Enzyme.render()
. I've just pushed a new version instructing a workaround (the aforementioned essentially) if you wish to use .render()
.
Ideally I'd want to polyfill this on the fly, but until I find a good method for this, I don't want to leave you hanging without anything.
This is available in v0.6.0.
Closed.
Stack: