UNPKG

@happy-dom/jest-environment

Version:
68 lines 2.03 kB
import VM from 'vm'; import { ModuleMocker } from 'jest-mock'; import { LegacyFakeTimers, ModernFakeTimers } from '@jest/fake-timers'; import { JestEnvironment, EnvironmentContext } from '@jest/environment'; import { Window } from 'happy-dom'; import { Script } from 'vm'; import { Global, Config } from '@jest/types'; /** * Happy DOM Jest Environment. */ export default class HappyDOMEnvironment implements JestEnvironment { fakeTimers: LegacyFakeTimers<number>; fakeTimersModern: ModernFakeTimers; window: Window; global: Global.Global; moduleMocker: ModuleMocker; /** * jest-environment-jsdom" has the default set to ['browser'] * As changing this value would be a breaking change, we will keep it at ['node', 'node-addons'] until we do a major release * * @see https://stackoverflow.com/questions/72428323/jest-referenceerror-vue-is-not-defined */ customExportConditions: string[]; private _configuredExportConditions; /** * Constructor. * * @param config Jest config. * @param config.globalConfig jest global config. * @param config.projectConfig jest project config. * @param options Options. */ constructor(config: { globalConfig: Config.GlobalConfig; projectConfig: Config.ProjectConfig; } | Config.ProjectConfig, options?: EnvironmentContext); /** * Respect any export conditions specified as options * https://jestjs.io/docs/configuration#testenvironmentoptions-object */ exportConditions(): string[]; /** * Setup. * * @returns Promise. */ setup(): Promise<void>; /** * Teardown. * * @returns Promise. */ teardown(): Promise<void>; /** * Runs a script. * * @param script Script. * @returns Result. */ runScript(script: Script): null; /** * Returns the VM context. * * @returns Context. */ getVmContext(): VM.Context; } //# sourceMappingURL=index.d.ts.map