UNPKG

intern

Version:

Intern. A next-generation code testing stack for JavaScript.

85 lines 3.7 kB
(function (factory) { if (typeof module === "object" && typeof module.exports === "object") { var v = factory(require, exports); if (v !== undefined) module.exports = v; } else if (typeof define === "function" && define.amd) { define(["require", "exports", "tslib", "istanbul-lib-coverage", "istanbul-lib-report", "istanbul-reports", "./Reporter"], factory); } })(function (require, exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require("tslib"); var istanbul_lib_coverage_1 = require("istanbul-lib-coverage"); var istanbul_lib_report_1 = require("istanbul-lib-report"); var istanbul_reports_1 = require("istanbul-reports"); var Reporter_1 = tslib_1.__importStar(require("./Reporter")); var eventHandler = Reporter_1.createEventHandler(); var Coverage = (function (_super) { tslib_1.__extends(Coverage, _super); function Coverage(executor, options) { if (options === void 0) { options = {}; } var _this = _super.call(this, executor, options) || this; if (options.filename) { _this.filename = options.filename; } if (options.directory) { _this.directory = options.directory; } if (options.watermarks) { _this.watermarks = options.watermarks; } return _this; } Coverage.prototype.getReporterOptions = function () { return { file: this.filename, }; }; Coverage.prototype.createCoverageReport = function (type, data) { return tslib_1.__awaiter(this, void 0, void 0, function () { var map, transformed, context; var _this = this; return tslib_1.__generator(this, function (_a) { switch (_a.label) { case 0: if (isCoverageMap(data)) { map = data; } else { map = istanbul_lib_coverage_1.createCoverageMap(data); } return [4, this.executor.sourceMapStore.transformCoverage(map)]; case 1: transformed = _a.sent(); context = istanbul_lib_report_1.createContext({ coverageMap: transformed, dir: this.directory, sourceFinder: function (path) { return _this.executor.sourceMapStore.sourceFinder(path); }, watermarks: this.watermarks, }); istanbul_reports_1.create(type, this.getReporterOptions()).execute(context); return [2]; } }); }); }; Coverage.prototype.runEnd = function () { var map = this.executor.coverageMap; if (map.files().length > 0) { return this.createCoverageReport(this.reportType, map); } }; tslib_1.__decorate([ eventHandler() ], Coverage.prototype, "runEnd", null); return Coverage; }(Reporter_1.default)); exports.default = Coverage; function isCoverageMap(value) { return value != null && typeof value.files === 'function'; } }); //# sourceMappingURL=Coverage.js.map