Jsdom: DOMException.SECURITY_ERR com o roteador react

Criado em 6 fev. 2016  ·  4Comentários  ·  Fonte: jsdom/jsdom

/../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)

ref: https://github.com/rackt/history/issues/224

Comentários muito úteis

Apenas no caso de alguém ter sido levado até aqui pelo mesmo rastreamento de pilha que eu fui:

Se você estiver usando o Jest, não se esqueça de adicionar uma propriedade testURL à sua configuração do Jest. Isso resolveu o problema para mim 👍

Todos 4 comentários

@Sebmaster , confirmo que isso corrige:

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

Apenas no caso de alguém ter sido levado até aqui pelo mesmo rastreamento de pilha que eu fui:

Se você estiver usando o Jest, não se esqueça de adicionar uma propriedade testURL à sua configuração do Jest. Isso resolveu o problema para mim 👍

@marlonicus , você se importaria de atualizar para testURL (URL em maiúsculas)? Obrigado por isso.

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

kentmw picture kentmw  ·  3Comentários

khalyomede picture khalyomede  ·  3Comentários

eszthoff picture eszthoff  ·  3Comentários

JacksonGariety picture JacksonGariety  ·  4Comentários

Progyan1997 picture Progyan1997  ·  3Comentários