UNPKG

stryker-mocha-runner

Version:

A plugin to use the mocha test runner in Stryker, the JavaScript mutation testing framework

57 lines 2.34 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var test_runner_1 = require("stryker-api/test_runner"); var Timer_1 = require("./Timer"); var StrykerMochaReporter = /** @class */ (function () { function StrykerMochaReporter(runner) { this.runner = runner; this.timer = new Timer_1.default(); this.passedCount = 0; this.registerEvents(); StrykerMochaReporter.currentInstance = this; } StrykerMochaReporter.prototype.registerEvents = function () { var _this = this; this.runner.on('start', function () { _this.passedCount = 0; _this.timer.reset(); _this.runResult = { errorMessages: [], status: test_runner_1.RunStatus.Error, tests: [] }; StrykerMochaReporter.log.debug('Starting Mocha test run'); }); this.runner.on('pass', function (test) { _this.runResult.tests.push({ name: test.fullTitle(), status: test_runner_1.TestStatus.Success, timeSpentMs: _this.timer.elapsedMs() }); _this.passedCount++; _this.timer.reset(); }); this.runner.on('fail', function (test, err) { _this.runResult.tests.push({ failureMessages: [err.message], name: test.fullTitle(), status: test_runner_1.TestStatus.Failed, timeSpentMs: _this.timer.elapsedMs() }); if (!_this.runResult.errorMessages) { _this.runResult.errorMessages = []; } _this.runResult.errorMessages.push(err.message); if (StrykerMochaReporter.log.isTraceEnabled()) { StrykerMochaReporter.log.trace("Test failed: " + test.fullTitle() + ". Error: " + err.message); } }); this.runner.on('end', function () { _this.runResult.status = test_runner_1.RunStatus.Complete; StrykerMochaReporter.log.debug('Mocha test run completed: %s/%s passed', _this.passedCount, _this.runResult.tests.length); }); }; return StrykerMochaReporter; }()); exports.StrykerMochaReporter = StrykerMochaReporter; //# sourceMappingURL=StrykerMochaReporter.js.map