const { JSDOM } = require('jsdom'); const Enzyme = require('enzyme'); const Adapter = require('enzyme-adapter-react-16'); const chai = require('chai'); Enzyme.configure({ adapter: new Adapter(), }); const jsdom = new JSDOM(''); const { window } = jsdom; function copyProps(src, target) { const props = Object.getOwnPropertyNames(src) .filter((prop) => typeof target[prop] === 'undefined') .reduce( (result, prop) => ({ ...result, [prop]: Object.getOwnPropertyDescriptor(src, prop), }), {}, ); Object.defineProperties(target, props); } global.window = window; global.document = window.document; global.navigator = { userAgent: 'node.js', }; copyProps(window, global); global.expect = chai.expect;