Как подавить вызовы window.function в контексте узла, например, Не реализовано: window.scrollTo - PullRequest
1 голос
/ 25 апреля 2019

Сотрудник реализовал компонент ScrollToTop, который имеет следующее:

componentDidMount() {
    window && window.scrollTo && window.scrollTo(0, 0)
}

Чтобы просто прокрутить страницу при некоторых обстоятельствах.

Однако при запуске тестов периодически выдается ошибка с Не реализовано: window.scrollTo (полный стек ошибок внизу).

Я понял, что window.scrollTo не существует ни в контексте узла, ни в шутливых тестах. Как я могу подавить попытку прокрутки в не браузерном контексте? Или как мне справиться с этим глобалом в шутку?

console.error node_modules/jest-environment-jsdom/node_modules/jsdom/lib/jsdom/virtual-console.js:29
  Error: Not implemented: window.scrollTo
      at module.exports (/src/argos-r/node_modules/jest-environment-jsdom/node_modules/jsdom/lib/jsdom/browser/not-implemented.js:9:17)
      at /src/argos-r/node_modules/jest-environment-jsdom/node_modules/jsdom/lib/jsdom/browser/Window.js:594:7
      at ScrollToTop.scrollTo [as componentDidMount] (/src/argos-r/src/components/ScrollToTop.js:6:45)
      at commitLifeCycles (/src/argos-r/node_modules/react-dom/cjs/react-dom.development.js:17334:22)
      at commitAllLifeCycles (/src/argos-r/node_modules/react-dom/cjs/react-dom.development.js:18736:7)
      at HTMLUnknownElement.callCallback (/src/argos-r/node_modules/react-dom/cjs/react-dom.development.js:149:14)
      at invokeEventListeners (/src/argos-r/node_modules/jest-environment-jsdom/node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:193:27)
      at HTMLUnknownElementImpl._dispatch (/src/argos-r/node_modules/jest-environment-jsdom/node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:119:9)
      at HTMLUnknownElementImpl.dispatchEvent (/src/argos-r/node_modules/jest-environment-jsdom/node_modules/jsdom/lib/jsdom/living/events/EventTarget-impl.js:82:17)
      at HTMLUnknownElementImpl.dispatchEvent (/src/argos-r/node_modules/jest-environment-jsdom/node_modules/jsdom/lib/jsdom/living/nodes/HTMLElement-impl.js:30:27) undefined
console.error node_modules/react-dom/cjs/react-dom.development.js:506
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...