diff --git a/frontend/test_support/dom.js b/frontend/test_support/dom.js index 5dd4a9ef..6c5306dd 100644 --- a/frontend/test_support/dom.js +++ b/frontend/test_support/dom.js @@ -1,22 +1,22 @@ const jsdom = require('jsdom') -const doc = jsdom.jsdom('') -const win = doc.defaultView -global.document = doc -global.window = win +const { JSDOM } = jsdom +const dom = new JSDOM('') + +global.document = dom.window.document +global.window = dom.window // take all properties of the window object and also attach it to the // mocha global object -propagateToGlobal(win) +propagateToGlobal(dom.window) // from mocha-jsdom https://github.com/rstacruz/mocha-jsdom/blob/master/index.js#L80 function propagateToGlobal(window) { - for (let key in window) { - if (!window.hasOwnProperty(key)) continue - if (key in global) continue - + global.HTMLElement = window.HTMLElement + Object.keys(window).forEach(key => { + if (key in global) return global[key] = window[key] - } + }) } // Metamaps dependencies fixes