| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247 | 
							- 'use strict';
 
- Object.defineProperty(exports, '__esModule', {
 
-   value: true
 
- });
 
- exports.default = jasmine2;
 
- var path = _interopRequireWildcard(require('path'));
 
- var _sourceMap = require('@jest/source-map');
 
- var _each = _interopRequireDefault(require('./each'));
 
- var _errorOnPrivate = require('./errorOnPrivate');
 
- var _jasmineAsyncInstall = _interopRequireDefault(
 
-   require('./jasmineAsyncInstall')
 
- );
 
- var _reporter = _interopRequireDefault(require('./reporter'));
 
- function _interopRequireDefault(obj) {
 
-   return obj && obj.__esModule ? obj : {default: obj};
 
- }
 
- function _getRequireWildcardCache(nodeInterop) {
 
-   if (typeof WeakMap !== 'function') return null;
 
-   var cacheBabelInterop = new WeakMap();
 
-   var cacheNodeInterop = new WeakMap();
 
-   return (_getRequireWildcardCache = function (nodeInterop) {
 
-     return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
 
-   })(nodeInterop);
 
- }
 
- function _interopRequireWildcard(obj, nodeInterop) {
 
-   if (!nodeInterop && obj && obj.__esModule) {
 
-     return obj;
 
-   }
 
-   if (obj === null || (typeof obj !== 'object' && typeof obj !== 'function')) {
 
-     return {default: obj};
 
-   }
 
-   var cache = _getRequireWildcardCache(nodeInterop);
 
-   if (cache && cache.has(obj)) {
 
-     return cache.get(obj);
 
-   }
 
-   var newObj = {};
 
-   var hasPropertyDescriptor =
 
-     Object.defineProperty && Object.getOwnPropertyDescriptor;
 
-   for (var key in obj) {
 
-     if (key !== 'default' && Object.prototype.hasOwnProperty.call(obj, key)) {
 
-       var desc = hasPropertyDescriptor
 
-         ? Object.getOwnPropertyDescriptor(obj, key)
 
-         : null;
 
-       if (desc && (desc.get || desc.set)) {
 
-         Object.defineProperty(newObj, key, desc);
 
-       } else {
 
-         newObj[key] = obj[key];
 
-       }
 
-     }
 
-   }
 
-   newObj.default = obj;
 
-   if (cache) {
 
-     cache.set(obj, newObj);
 
-   }
 
-   return newObj;
 
- }
 
- /**
 
-  * 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.
 
-  */
 
- const JASMINE = require.resolve('./jasmine/jasmineLight');
 
- const jestEachBuildDir = path.dirname(require.resolve('jest-each'));
 
- async function jasmine2(globalConfig, config, environment, runtime, testPath) {
 
-   const reporter = new _reporter.default(globalConfig, config, testPath);
 
-   const jasmineFactory = runtime.requireInternalModule(JASMINE);
 
-   const jasmine = jasmineFactory.create({
 
-     process,
 
-     testPath,
 
-     testTimeout: globalConfig.testTimeout
 
-   });
 
-   const env = jasmine.getEnv();
 
-   const jasmineInterface = jasmineFactory._interface(jasmine, env);
 
-   Object.assign(environment.global, jasmineInterface);
 
-   env.addReporter(jasmineInterface.jsApiReporter); // TODO: Remove config option if V8 exposes some way of getting location of caller
 
-   // in a future version
 
-   if (config.testLocationInResults === true) {
 
-     function wrapIt(original) {
 
-       const wrapped = (testName, fn, timeout) => {
 
-         var _stack$getFileName;
 
-         const sourcemaps = runtime.getSourceMaps();
 
-         let stack = (0, _sourceMap.getCallsite)(1, sourcemaps);
 
-         const it = original(testName, fn, timeout);
 
-         if (
 
-           (_stack$getFileName = stack.getFileName()) !== null &&
 
-           _stack$getFileName !== void 0 &&
 
-           _stack$getFileName.startsWith(jestEachBuildDir)
 
-         ) {
 
-           stack = (0, _sourceMap.getCallsite)(4, sourcemaps);
 
-         } // @ts-expect-error
 
-         it.result.__callsite = stack;
 
-         return it;
 
-       };
 
-       return wrapped;
 
-     }
 
-     environment.global.it = wrapIt(environment.global.it);
 
-     environment.global.xit = wrapIt(environment.global.xit);
 
-     environment.global.fit = wrapIt(environment.global.fit);
 
-   }
 
-   (0, _jasmineAsyncInstall.default)(globalConfig, environment.global);
 
-   (0, _each.default)(environment);
 
-   environment.global.test = environment.global.it;
 
-   environment.global.it.only = environment.global.fit;
 
-   environment.global.it.todo = env.todo;
 
-   environment.global.it.skip = environment.global.xit;
 
-   environment.global.xtest = environment.global.xit;
 
-   environment.global.describe.skip = environment.global.xdescribe;
 
-   environment.global.describe.only = environment.global.fdescribe;
 
-   if (config.timers === 'fake' || config.timers === 'modern') {
 
-     environment.fakeTimersModern.useFakeTimers();
 
-   } else if (config.timers === 'legacy') {
 
-     environment.fakeTimers.useFakeTimers();
 
-   }
 
-   env.beforeEach(() => {
 
-     if (config.resetModules) {
 
-       runtime.resetModules();
 
-     }
 
-     if (config.clearMocks) {
 
-       runtime.clearAllMocks();
 
-     }
 
-     if (config.resetMocks) {
 
-       runtime.resetAllMocks();
 
-       if (config.timers === 'legacy') {
 
-         environment.fakeTimers.useFakeTimers();
 
-       }
 
-     }
 
-     if (config.restoreMocks) {
 
-       runtime.restoreAllMocks();
 
-     }
 
-   });
 
-   env.addReporter(reporter);
 
-   runtime
 
-     .requireInternalModule(path.resolve(__dirname, './jestExpect.js'))
 
-     .default({
 
-       expand: globalConfig.expand
 
-     });
 
-   if (globalConfig.errorOnDeprecated) {
 
-     (0, _errorOnPrivate.installErrorOnPrivate)(environment.global);
 
-   } else {
 
-     Object.defineProperty(jasmine, 'DEFAULT_TIMEOUT_INTERVAL', {
 
-       configurable: true,
 
-       enumerable: true,
 
-       get() {
 
-         return this._DEFAULT_TIMEOUT_INTERVAL;
 
-       },
 
-       set(value) {
 
-         this._DEFAULT_TIMEOUT_INTERVAL = value;
 
-       }
 
-     });
 
-   }
 
-   const snapshotState = await runtime
 
-     .requireInternalModule(path.resolve(__dirname, './setup_jest_globals.js'))
 
-     .default({
 
-       config,
 
-       globalConfig,
 
-       localRequire: runtime.requireModule.bind(runtime),
 
-       testPath
 
-     });
 
-   for (const path of config.setupFilesAfterEnv) {
 
-     const esm = runtime.unstable_shouldLoadAsEsm(path);
 
-     if (esm) {
 
-       await runtime.unstable_importModule(path);
 
-     } else {
 
-       runtime.requireModule(path);
 
-     }
 
-   }
 
-   if (globalConfig.testNamePattern) {
 
-     const testNameRegex = new RegExp(globalConfig.testNamePattern, 'i');
 
-     env.specFilter = spec => testNameRegex.test(spec.getFullName());
 
-   }
 
-   const esm = runtime.unstable_shouldLoadAsEsm(testPath);
 
-   if (esm) {
 
-     await runtime.unstable_importModule(testPath);
 
-   } else {
 
-     runtime.requireModule(testPath);
 
-   }
 
-   await env.execute();
 
-   const results = await reporter.getResults();
 
-   return addSnapshotData(results, snapshotState);
 
- }
 
- const addSnapshotData = (results, snapshotState) => {
 
-   results.testResults.forEach(({fullName, status}) => {
 
-     if (status === 'pending' || status === 'failed') {
 
-       // if test is skipped or failed, we don't want to mark
 
-       // its snapshots as obsolete.
 
-       snapshotState.markSnapshotsAsCheckedForTest(fullName);
 
-     }
 
-   });
 
-   const uncheckedCount = snapshotState.getUncheckedCount();
 
-   const uncheckedKeys = snapshotState.getUncheckedKeys();
 
-   if (uncheckedCount) {
 
-     snapshotState.removeUncheckedKeys();
 
-   }
 
-   const status = snapshotState.save();
 
-   results.snapshot.fileDeleted = status.deleted;
 
-   results.snapshot.added = snapshotState.added;
 
-   results.snapshot.matched = snapshotState.matched;
 
-   results.snapshot.unmatched = snapshotState.unmatched;
 
-   results.snapshot.updated = snapshotState.updated;
 
-   results.snapshot.unchecked = !status.deleted ? uncheckedCount : 0; // Copy the array to prevent memory leaks
 
-   results.snapshot.uncheckedKeys = Array.from(uncheckedKeys);
 
-   return results;
 
- };
 
 
  |