Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.
 
 
 
 

24 рядки
658 B

  1. const { JSDOM } = require("jsdom")
  2. const win = require("core/window")
  3. const jsdom = new JSDOM("<!doctype html><html><body></body></html>")
  4. const { window } = jsdom
  5. function copyProps(src, target) {
  6. const props = Object.getOwnPropertyNames(src)
  7. .filter(prop => typeof target[prop] === "undefined")
  8. .reduce((result, prop) => ({
  9. ...result,
  10. [prop]: Object.getOwnPropertyDescriptor(src, prop),
  11. }), {})
  12. Object.defineProperties(target, props)
  13. }
  14. global.window = window
  15. global.document = window.document
  16. global.navigator = {
  17. userAgent: "node.js",
  18. }
  19. copyProps(win, window) // use UI's built-in window wrapper
  20. copyProps(window, global)