Gazebo_simulation-Frontend/node_modules/jest-watcher/build/jest_hooks.js
2020-12-21 10:29:31 -05:00

105 lines
2.4 KiB
JavaScript

'use strict';
Object.defineProperty(exports, '__esModule', {
value: true
});
function _asyncToGenerator(fn) {
return function() {
var gen = fn.apply(this, arguments);
return new Promise(function(resolve, reject) {
function step(key, arg) {
try {
var info = gen[key](arg);
var value = info.value;
} catch (error) {
reject(error);
return;
}
if (info.done) {
resolve(value);
} else {
return Promise.resolve(value).then(
function(value) {
step('next', value);
},
function(err) {
step('throw', err);
}
);
}
}
return step('next');
});
};
}
/**
* Copyright (c) 2014-present, Facebook, Inc. 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.
*
*
*/
class JestHooks {
constructor() {
this._listeners = {
onFileChange: [],
onTestRunComplete: [],
shouldRunTestSuite: []
};
}
isUsed(hook) {
return this._listeners[hook] && this._listeners[hook].length;
}
getSubscriber() {
return {
onFileChange: fn => {
this._listeners.onFileChange.push(fn);
},
onTestRunComplete: fn => {
this._listeners.onTestRunComplete.push(fn);
},
shouldRunTestSuite: fn => {
this._listeners.shouldRunTestSuite.push(fn);
}
};
}
getEmitter() {
var _this = this;
return {
onFileChange: fs =>
this._listeners.onFileChange.forEach(listener => listener(fs)),
onTestRunComplete: results =>
this._listeners.onTestRunComplete.forEach(listener =>
listener(results)
),
shouldRunTestSuite: (() => {
var _ref = _asyncToGenerator(function*(testSuiteInfo) {
return Promise.all(
_this._listeners.shouldRunTestSuite.map(function(listener) {
return listener(testSuiteInfo);
})
).then(function(result) {
return result.every(function(shouldRunTestSuite) {
return shouldRunTestSuite;
});
});
});
return function shouldRunTestSuite(_x) {
return _ref.apply(this, arguments);
};
})()
};
}
}
exports.default = JestHooks;