v3 new release (#80)
This commit is contained in:
committed by
GitHub
parent
a767c8d3a1
commit
20d2b4f98d
182
node_modules/@jest/fake-timers/build/modernFakeTimers.js
generated
vendored
Normal file
182
node_modules/@jest/fake-timers/build/modernFakeTimers.js
generated
vendored
Normal file
@ -0,0 +1,182 @@
|
||||
'use strict';
|
||||
|
||||
Object.defineProperty(exports, '__esModule', {
|
||||
value: true
|
||||
});
|
||||
exports.default = void 0;
|
||||
|
||||
function _fakeTimers() {
|
||||
const data = require('@sinonjs/fake-timers');
|
||||
|
||||
_fakeTimers = function () {
|
||||
return data;
|
||||
};
|
||||
|
||||
return data;
|
||||
}
|
||||
|
||||
function _jestMessageUtil() {
|
||||
const data = require('jest-message-util');
|
||||
|
||||
_jestMessageUtil = 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 FakeTimers {
|
||||
constructor({global, config, maxLoops}) {
|
||||
_defineProperty(this, '_clock', void 0);
|
||||
|
||||
_defineProperty(this, '_config', void 0);
|
||||
|
||||
_defineProperty(this, '_fakingTime', void 0);
|
||||
|
||||
_defineProperty(this, '_global', void 0);
|
||||
|
||||
_defineProperty(this, '_fakeTimers', void 0);
|
||||
|
||||
_defineProperty(this, '_maxLoops', void 0);
|
||||
|
||||
this._global = global;
|
||||
this._config = config;
|
||||
this._maxLoops = maxLoops || 100000;
|
||||
this._fakingTime = false;
|
||||
this._fakeTimers = (0, _fakeTimers().withGlobal)(global);
|
||||
}
|
||||
|
||||
clearAllTimers() {
|
||||
if (this._fakingTime) {
|
||||
this._clock.reset();
|
||||
}
|
||||
}
|
||||
|
||||
dispose() {
|
||||
this.useRealTimers();
|
||||
}
|
||||
|
||||
runAllTimers() {
|
||||
if (this._checkFakeTimers()) {
|
||||
this._clock.runAll();
|
||||
}
|
||||
}
|
||||
|
||||
runOnlyPendingTimers() {
|
||||
if (this._checkFakeTimers()) {
|
||||
this._clock.runToLast();
|
||||
}
|
||||
}
|
||||
|
||||
advanceTimersToNextTimer(steps = 1) {
|
||||
if (this._checkFakeTimers()) {
|
||||
for (let i = steps; i > 0; i--) {
|
||||
this._clock.next(); // Fire all timers at this point: https://github.com/sinonjs/fake-timers/issues/250
|
||||
|
||||
this._clock.tick(0);
|
||||
|
||||
if (this._clock.countTimers() === 0) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
advanceTimersByTime(msToRun) {
|
||||
if (this._checkFakeTimers()) {
|
||||
this._clock.tick(msToRun);
|
||||
}
|
||||
}
|
||||
|
||||
runAllTicks() {
|
||||
if (this._checkFakeTimers()) {
|
||||
// @ts-expect-error
|
||||
this._clock.runMicrotasks();
|
||||
}
|
||||
}
|
||||
|
||||
useRealTimers() {
|
||||
if (this._fakingTime) {
|
||||
this._clock.uninstall();
|
||||
|
||||
this._fakingTime = false;
|
||||
}
|
||||
}
|
||||
|
||||
useFakeTimers() {
|
||||
if (!this._fakingTime) {
|
||||
const toFake = Object.keys(this._fakeTimers.timers);
|
||||
this._clock = this._fakeTimers.install({
|
||||
loopLimit: this._maxLoops,
|
||||
now: Date.now(),
|
||||
target: this._global,
|
||||
toFake
|
||||
});
|
||||
this._fakingTime = true;
|
||||
}
|
||||
}
|
||||
|
||||
reset() {
|
||||
if (this._checkFakeTimers()) {
|
||||
const {now} = this._clock;
|
||||
|
||||
this._clock.reset();
|
||||
|
||||
this._clock.setSystemTime(now);
|
||||
}
|
||||
}
|
||||
|
||||
setSystemTime(now) {
|
||||
if (this._checkFakeTimers()) {
|
||||
this._clock.setSystemTime(now);
|
||||
}
|
||||
}
|
||||
|
||||
getRealSystemTime() {
|
||||
return Date.now();
|
||||
}
|
||||
|
||||
getTimerCount() {
|
||||
if (this._checkFakeTimers()) {
|
||||
return this._clock.countTimers();
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
_checkFakeTimers() {
|
||||
if (!this._fakingTime) {
|
||||
this._global.console.warn(
|
||||
'A function to advance timers was called but the timers API is not ' +
|
||||
'mocked with fake timers. Call `jest.useFakeTimers()` in this test or ' +
|
||||
'enable fake timers globally by setting `"timers": "fake"` in the ' +
|
||||
'configuration file\nStack Trace:\n' +
|
||||
(0, _jestMessageUtil().formatStackTrace)(
|
||||
new Error().stack,
|
||||
this._config,
|
||||
{
|
||||
noStackTrace: false
|
||||
}
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
return this._fakingTime;
|
||||
}
|
||||
}
|
||||
|
||||
exports.default = FakeTimers;
|
Reference in New Issue
Block a user