UNPKG

asmimproved-dbgmits

Version:

Provides the ability to control GDB and LLDB programmatically via GDB/MI.

53 lines 4.22 kB
// Copyright (c) 2015 Vadim Macagon // MIT License, see LICENSE file for full terms. "use strict"; var __extends = (this && this.__extends) || function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; require('source-map-support').install(); var mocha = require('mocha'); ; /** * Specialization of Mocha's `spec` reporter that creates a new logger for each test. */ var CustomReporter = (function (_super) { __extends(CustomReporter, _super); function CustomReporter(runner) { var _this = this; _super.call(this, runner); // 'test' gets emitted before the beforeEach 'hook', so the logger for each test needs to be // created at this point and then passed through to the hook callback runner.on('test', function (test) { // pad the test number with zeroes (e.g. 1 -> 001, 10 -> 010, 100 -> 100) var pad = '000'; var testSuffix = (pad + _this.stats.tests).slice(-pad.length); test.title = test.title + " [" + testSuffix + "]"; if (test.createLogger) { _this.logger = test.createLogger(_this.stats.tests, test.title); } else { // the test doesn't have a function to create a logger so look for one further up // the hierarchy var parent_1 = test.parent; while (parent_1) { if (parent_1.createLogger) { _this.logger = parent_1.createLogger(_this.stats.tests, test.title); break; } parent_1 = parent_1.parent; } } }); runner.on('hook', function (hook) { // only the beforeEach hook should have a setLogger function if (hook.fn && hook.fn.setLogger) { hook.fn.setLogger(_this.logger); } }); } return CustomReporter; }(mocha.reporters.Spec)); module.exports = CustomReporter; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tX3JlcG9ydGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdGVzdC9jdXN0b21fcmVwb3J0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsbUNBQW1DO0FBQ25DLGdEQUFnRDs7Ozs7OztBQUVoRCxPQUFPLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztBQUV4QyxJQUFPLEtBQUssV0FBVyxPQUFPLENBQUMsQ0FBQztBQWdCL0IsQ0FBQztBQU9GOztHQUVHO0FBQ0g7SUFBNkIsa0NBQW9CO0lBSS9DLHdCQUFZLE1BQXFCO1FBSm5DLGlCQXFDQztRQWhDRyxrQkFBTSxNQUFNLENBQUMsQ0FBQztRQUVkLDRGQUE0RjtRQUM1RixxRUFBcUU7UUFDckUsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsVUFBQyxJQUFXO1lBQzVCLHlFQUF5RTtZQUN6RSxJQUFJLEdBQUcsR0FBRyxLQUFLLENBQUM7WUFDaEIsSUFBSSxVQUFVLEdBQUcsQ0FBQyxHQUFHLEdBQUcsS0FBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDN0QsSUFBSSxDQUFDLEtBQUssR0FBTSxJQUFJLENBQUMsS0FBSyxVQUFLLFVBQVUsTUFBRyxDQUFDO1lBQzdDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO2dCQUN0QixLQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2hFLENBQUM7WUFBQyxJQUFJLENBQUMsQ0FBQztnQkFDTixpRkFBaUY7Z0JBQ2pGLGdCQUFnQjtnQkFDaEIsSUFBSSxRQUFNLEdBQVcsSUFBSSxDQUFDLE1BQU0sQ0FBQztnQkFDakMsT0FBTyxRQUFNLEVBQUUsQ0FBQztvQkFDZCxFQUFFLENBQUMsQ0FBQyxRQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQzt3QkFDeEIsS0FBSSxDQUFDLE1BQU0sR0FBRyxRQUFNLENBQUMsWUFBWSxDQUFDLEtBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQzt3QkFDaEUsS0FBSyxDQUFDO29CQUNSLENBQUM7b0JBQ0QsUUFBTSxHQUFHLFFBQU0sQ0FBQyxNQUFNLENBQUM7Z0JBQ3pCLENBQUM7WUFDSCxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFFSCxNQUFNLENBQUMsRUFBRSxDQUFDLE1BQU0sRUFBRSxVQUFDLElBQVc7WUFDNUIsNERBQTREO1lBQzVELEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO2dCQUNqQyxJQUFJLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxLQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDakMsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNILHFCQUFDO0FBQUQsQ0FBQyxBQXJDRCxDQUE2QixLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksR0FxQ2hEO0FBRUQsTUFBTSxDQUFDLE9BQU8sR0FBRyxjQUFjLENBQUMifQ==