UNPKG

gulp-jest

Version:

Gulp plugin for running your Jest tests

47 lines (39 loc) 1.49 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _pluginError = _interopRequireDefault(require("plugin-error")); var _through = _interopRequireDefault(require("through2")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } var _require = require('@jest/core'), runCLI = _require.runCLI; var _default = function _default() { var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; return _through["default"].obj(function (file, enc, cb) { options = Object.assign({ rootDir: file ? process.cwd() : undefined }, options); runCLI(options, [options.rootDir]).then(function (_ref) { var results = _ref.results; if (results.numFailedTests || results.numFailedTestSuites) { cb(new _pluginError["default"]('gulp-jest', { message: 'Tests Failed' })); } else if (typeof results.success !== 'undefined' && !results.success) { if (results.snapshot && results.snapshot.failure) { cb(new _pluginError["default"]('gulp-jest', { message: 'Tests Failed due to coverage snapshot failure' })); } else { cb(new _pluginError["default"]('gulp-jest', { message: 'Tests Failed due to coverage threshold breaches' })); } } else { cb(); } }); }); }; exports["default"] = _default;