/../app/node_modules/jsdom/lib/jsdom/living/window/History-impl.js:87
throw new DOMException(DOMException.SECURITY_ERR, `Could not parse url argument "${url}" to ${methodName} ` +
^
SecurityError
at HistoryImpl._sharedPushAndReplaceState (/../app/node_modules/jsdom/lib/jsdom/living/window/History-impl.js:87:15)
at HistoryImpl.replaceState (/../app/node_modules/jsdom/lib/jsdom/living/window/History-impl.js:72:10)
at History.replaceState (/../app/node_modules/jsdom/lib/jsdom/living/generated/History.js:89:58)
at getCurrentLocation (/../app/node_modules/history/lib/createBrowserHistory.js:60:39)
at Object.listen (/../app/node_modules/history/lib/createHistory.js:106:23)
at Object.listen (/../app/node_modules/history/lib/createDOMHistory.js:31:20)
at Object.listen (/../app/node_modules/history/lib/createBrowserHistory.js:144:28)
at Object.listen (/../app/node_modules/history/lib/useBasename.js:78:22)
at Object.listen (/../app/node_modules/history/lib/useQueries.js:111:22)
at syncHistory (/../app/node_modules/react-router-redux/lib/index.js:78:11)
@Sebmaster, je confirme que cela résout le problème :
const jsdom = require('jsdom').jsdom
global.document = jsdom('<!doctype html><html><body><div id="app"></div></body></html>', {
url: 'http://localhost'
})
global.window = document.defaultView
global.navigator = global.window.navigator
Juste au cas où quelqu'un serait conduit ici via la même trace de pile que moi :
Si vous utilisez Jest, n'oubliez pas d'ajouter une propriété testURL à votre configuration Jest. Cela a résolu le problème pour moi 👍
@marlonicus voudriez-vous le mettre à jour en testURL
(URL en majuscules) ? Merci pour cela.
Commentaire le plus utile
Juste au cas où quelqu'un serait conduit ici via la même trace de pile que moi :
Si vous utilisez Jest, n'oubliez pas d'ajouter une propriété testURL à votre configuration Jest. Cela a résolu le problème pour moi 👍