diff --git a/config/jsdom.js b/config/jsdom.js index 78a8bae..30ef6ef 100644 --- a/config/jsdom.js +++ b/config/jsdom.js @@ -1,6 +1,11 @@ const { JSDOM } = require('jsdom'); -const jsdom = new JSDOM(''); +const jsdom = new JSDOM( + '', + { + pretendToBeVisual: true, + }, +); const { window } = jsdom; function copyProps(src, target) { @@ -20,26 +25,6 @@ function ignoreExtensions(extensions = [], returnValue = {}) { }); } -function mockRAF(global) { - let callbacksQueue = []; - - global.setInterval(() => { - for (let i = 0; i < callbacksQueue.length; i++) { - if (callbacksQueue[i] !== false) { - callbacksQueue[i].call(null); - } - } - - callbacksQueue = []; - }, 1000 / 60); - - global.requestAnimationFrame = callback => callbacksQueue.push(callback) - 1; - - global.cancelAnimationFrame = id => { - callbacksQueue[id] = false; - }; -} - global.window = window; global.document = window.document; global.navigator = { @@ -52,9 +37,9 @@ global.Option = window.Option; global.HTMLOptionElement = window.HTMLOptionElement; global.HTMLOptGroupElement = window.HTMLOptGroupElement; global.DocumentFragment = window.DocumentFragment; +global.requestAnimationFrame = window.requestAnimationFrame; copyProps(window, global); -mockRAF(global); ignoreExtensions(['.scss', '.css']); ignoreExtensions(['.jpg', '.png', '.svg'], '');