diff options
| author | Joel Kronqvist <joel.h.kronqvist@gmail.com> | 2022-03-05 19:02:27 +0200 | 
|---|---|---|
| committer | Joel Kronqvist <joel.h.kronqvist@gmail.com> | 2022-03-05 19:02:27 +0200 | 
| commit | 5d309ff52cd399a6b71968a6b9a70c8ac0b98981 (patch) | |
| tree | 360f7eb50f956e2367ef38fa1fc6ac7ac5258042 /node_modules/jest-environment-jsdom/build | |
| parent | b500a50f1b97d93c98b36ed9a980f8188d648147 (diff) | |
| download | LYLLRuoka-5d309ff52cd399a6b71968a6b9a70c8ac0b98981.tar.gz LYLLRuoka-5d309ff52cd399a6b71968a6b9a70c8ac0b98981.zip  | |
Added node_modules for the updating to work properly.
Diffstat (limited to 'node_modules/jest-environment-jsdom/build')
| -rw-r--r-- | node_modules/jest-environment-jsdom/build/index.d.ts | 30 | ||||
| -rw-r--r-- | node_modules/jest-environment-jsdom/build/index.js | 195 | 
2 files changed, 225 insertions, 0 deletions
diff --git a/node_modules/jest-environment-jsdom/build/index.d.ts b/node_modules/jest-environment-jsdom/build/index.d.ts new file mode 100644 index 0000000..9d8aba3 --- /dev/null +++ b/node_modules/jest-environment-jsdom/build/index.d.ts @@ -0,0 +1,30 @@ +/** + * Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ +/// <reference types="node" /> +import type { Context } from 'vm'; +import type { EnvironmentContext, JestEnvironment } from '@jest/environment'; +import { LegacyFakeTimers, ModernFakeTimers } from '@jest/fake-timers'; +import type { Config, Global } from '@jest/types'; +import { ModuleMocker } from 'jest-mock'; +declare type Win = Window & Global.Global & { +    Error: { +        stackTraceLimit: number; +    }; +}; +declare class JSDOMEnvironment implements JestEnvironment<number> { +    private dom; +    fakeTimers: LegacyFakeTimers<number> | null; +    fakeTimersModern: ModernFakeTimers | null; +    global: Win; +    private errorEventListener; +    moduleMocker: ModuleMocker | null; +    constructor(config: Config.ProjectConfig, options?: EnvironmentContext); +    setup(): Promise<void>; +    teardown(): Promise<void>; +    getVmContext(): Context | null; +} +export = JSDOMEnvironment; diff --git a/node_modules/jest-environment-jsdom/build/index.js b/node_modules/jest-environment-jsdom/build/index.js new file mode 100644 index 0000000..77176ba --- /dev/null +++ b/node_modules/jest-environment-jsdom/build/index.js @@ -0,0 +1,195 @@ +'use strict'; + +function _jsdom() { +  const data = require('jsdom'); + +  _jsdom = function () { +    return data; +  }; + +  return data; +} + +function _fakeTimers() { +  const data = require('@jest/fake-timers'); + +  _fakeTimers = function () { +    return data; +  }; + +  return data; +} + +function _jestMock() { +  const data = require('jest-mock'); + +  _jestMock = function () { +    return data; +  }; + +  return data; +} + +function _jestUtil() { +  const data = require('jest-util'); + +  _jestUtil = function () { +    return data; +  }; + +  return data; +} + +function _defineProperty(obj, key, value) { +  if (key in obj) { +    Object.defineProperty(obj, key, { +      value: value, +      enumerable: true, +      configurable: true, +      writable: true +    }); +  } else { +    obj[key] = value; +  } +  return obj; +} + +class JSDOMEnvironment { +  constructor(config, options) { +    _defineProperty(this, 'dom', void 0); + +    _defineProperty(this, 'fakeTimers', void 0); + +    _defineProperty(this, 'fakeTimersModern', void 0); + +    _defineProperty(this, 'global', void 0); + +    _defineProperty(this, 'errorEventListener', void 0); + +    _defineProperty(this, 'moduleMocker', void 0); + +    this.dom = new (_jsdom().JSDOM)( +      typeof config.testEnvironmentOptions.html === 'string' +        ? config.testEnvironmentOptions.html +        : '<!DOCTYPE html>', +      { +        pretendToBeVisual: true, +        resources: +          typeof config.testEnvironmentOptions.userAgent === 'string' +            ? new (_jsdom().ResourceLoader)({ +                userAgent: config.testEnvironmentOptions.userAgent +              }) +            : undefined, +        runScripts: 'dangerously', +        url: config.testURL, +        virtualConsole: new (_jsdom().VirtualConsole)().sendTo( +          (options === null || options === void 0 ? void 0 : options.console) || +            console +        ), +        ...config.testEnvironmentOptions +      } +    ); +    const global = (this.global = this.dom.window.document.defaultView); + +    if (!global) { +      throw new Error('JSDOM did not return a Window object'); +    } // for "universal" code (code should use `globalThis`) + +    global.global = global; // Node's error-message stack size is limited at 10, but it's pretty useful +    // to see more than that when a test fails. + +    this.global.Error.stackTraceLimit = 100; +    (0, _jestUtil().installCommonGlobals)(global, config.globals); // TODO: remove this ASAP, but it currently causes tests to run really slow + +    global.Buffer = Buffer; // Report uncaught errors. + +    this.errorEventListener = event => { +      if (userErrorListenerCount === 0 && event.error) { +        process.emit('uncaughtException', event.error); +      } +    }; + +    global.addEventListener('error', this.errorEventListener); // However, don't report them as uncaught if the user listens to 'error' event. +    // In that case, we assume the might have custom error handling logic. + +    const originalAddListener = global.addEventListener; +    const originalRemoveListener = global.removeEventListener; +    let userErrorListenerCount = 0; + +    global.addEventListener = function (...args) { +      if (args[0] === 'error') { +        userErrorListenerCount++; +      } + +      return originalAddListener.apply(this, args); +    }; + +    global.removeEventListener = function (...args) { +      if (args[0] === 'error') { +        userErrorListenerCount--; +      } + +      return originalRemoveListener.apply(this, args); +    }; + +    this.moduleMocker = new (_jestMock().ModuleMocker)(global); +    const timerConfig = { +      idToRef: id => id, +      refToId: ref => ref +    }; +    this.fakeTimers = new (_fakeTimers().LegacyFakeTimers)({ +      config, +      global: global, +      moduleMocker: this.moduleMocker, +      timerConfig +    }); +    this.fakeTimersModern = new (_fakeTimers().ModernFakeTimers)({ +      config, +      global: global +    }); +  } + +  async setup() {} + +  async teardown() { +    if (this.fakeTimers) { +      this.fakeTimers.dispose(); +    } + +    if (this.fakeTimersModern) { +      this.fakeTimersModern.dispose(); +    } + +    if (this.global) { +      if (this.errorEventListener) { +        this.global.removeEventListener('error', this.errorEventListener); +      } + +      this.global.close(); // Dispose "document" to prevent "load" event from triggering. +      // Note that this.global.close() will trigger the CustomElement::disconnectedCallback +      // Do not reset the document before CustomElement disconnectedCallback function has finished running, +      // document should be accessible within disconnectedCallback. + +      Object.defineProperty(this.global, 'document', { +        value: null +      }); +    } + +    this.errorEventListener = null; // @ts-expect-error + +    this.global = null; +    this.dom = null; +    this.fakeTimers = null; +    this.fakeTimersModern = null; +  } + +  getVmContext() { +    if (this.dom) { +      return this.dom.getInternalVMContext(); +    } + +    return null; +  } +} + +module.exports = JSDOMEnvironment;  | 
