mocha8allure
Version:
Allure mocha reporter
81 lines • 6.81 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const mocha_1 = __importDefault(require("mocha"));
const utils_1 = require("./utils");
const { EVENT_RUN_BEGIN, EVENT_RUN_END, EVENT_TEST_BEGIN, EVENT_TEST_FAIL, EVENT_TEST_PASS, EVENT_TEST_PENDING, EVENT_TEST_RETRY, EVENT_SUITE_BEGIN, EVENT_SUITE_END, EVENT_HOOK_BEGIN, EVENT_HOOK_END, } = mocha_1.default.Runner.constants;
class MochaAllureReporter extends mocha_1.default.reporters.Base {
constructor(runner, options) {
super(runner, options);
process.env.resultsPath = options.reporterOptions.targetDir
? options.reporterOptions.targetDir
: "./reports/allure-results";
process.env.SHOW_HOOKS = options.reporterOptions.showHooks
? options.reporterOptions.showHooks
: false;
if (this.runner.isParallelMode()) {
let serialPath = "mocha8allure/lib/serialMode";
try {
require("mocha8allure");
}
catch {
serialPath = "./lib/serialMode";
}
this.runner.workerReporter(serialPath);
}
else {
runner.on(EVENT_RUN_BEGIN, () => {
utils_1.generateFolder();
});
runner.on(EVENT_SUITE_BEGIN, (suite) => {
utils_1.suiteStart(suite);
});
runner.on(EVENT_SUITE_END, (suite) => {
utils_1.suiteEnd(suite);
});
runner.on(EVENT_HOOK_BEGIN, (hook) => {
if (process.env.SHOW_HOOKS && process.env.SHOW_HOOKS === "true") {
utils_1.startItem(hook);
}
});
runner.on(EVENT_HOOK_END, (hook) => {
if (process.env.SHOW_HOOKS && process.env.SHOW_HOOKS === "true") {
utils_1.passedItem(hook);
}
});
runner.on(EVENT_TEST_BEGIN, (test) => {
utils_1.startItem(test);
});
runner.on(EVENT_TEST_RETRY, (test, err) => {
utils_1.failedTest(test, err);
});
runner.on(EVENT_TEST_PASS, (test) => {
utils_1.passedItem(test);
});
runner.on(EVENT_TEST_FAIL, (item, err) => {
if (item.type !== "hook") {
utils_1.failedTest(item, err);
}
else {
utils_1.failedHook(item, err);
}
});
runner.on(EVENT_TEST_PENDING, (test) => {
utils_1.skippedTest(test);
});
}
runner.once(EVENT_RUN_END, () => {
if (options.reporterOptions.showEpilogue) {
process.stdout.write("\n");
this.epilogue();
}
});
}
async done(failures, exit) {
exit && exit(failures > 0 ? 1 : 0);
}
}
module.exports = MochaAllureReporter;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwb3J0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvcmVwb3J0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxrREFBNEM7QUFFNUMsbUNBU2lCO0FBRWpCLE1BQU0sRUFDSixlQUFlLEVBQ2YsYUFBYSxFQUNiLGdCQUFnQixFQUNoQixlQUFlLEVBQ2YsZUFBZSxFQUNmLGtCQUFrQixFQUNsQixnQkFBZ0IsRUFDaEIsaUJBQWlCLEVBQ2pCLGVBQWUsRUFDZixnQkFBZ0IsRUFDaEIsY0FBYyxHQUNmLEdBQUcsZUFBSyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUM7QUFFM0IsTUFBTSxtQkFBb0IsU0FBUSxlQUFLLENBQUMsU0FBUyxDQUFDLElBQUk7SUFDcEQsWUFBWSxNQUFvQixFQUFFLE9BQXFCO1FBQ3JELEtBQUssQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDdkIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDLGVBQWUsQ0FBQyxTQUFTO1lBQ3pELENBQUMsQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLFNBQVM7WUFDbkMsQ0FBQyxDQUFDLDBCQUEwQixDQUFDO1FBQy9CLE9BQU8sQ0FBQyxHQUFHLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxlQUFlLENBQUMsU0FBUztZQUN4RCxDQUFDLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxTQUFTO1lBQ25DLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDVixJQUFLLElBQUksQ0FBQyxNQUFjLENBQUMsY0FBYyxFQUFFLEVBQUU7WUFDekMsSUFBSSxVQUFVLEdBQUcsNkJBQTZCLENBQUM7WUFDL0MsSUFBSTtnQkFDRixPQUFPLENBQUMsY0FBYyxDQUFDLENBQUM7YUFDekI7WUFBQyxNQUFNO2dCQUNOLFVBQVUsR0FBRyxrQkFBa0IsQ0FBQzthQUNqQztZQUNBLElBQUksQ0FBQyxNQUFjLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FB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