jest-allure2-reporter
Version:
Idiomatic Jest reporter for Allure Framework
37 lines • 2 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.resolveWriter = void 0;
exports.resolveOptions = resolveOptions;
exports.resolveExtendsChain = resolveExtendsChain;
const utils_1 = require("../utils");
const custom_1 = require("./custom");
const default_1 = require("./default");
const extendOptions_1 = require("./extendOptions");
const combineTestCaseAndSteps_1 = require("./combineTestCaseAndSteps");
async function resolveOptions(rootDirectory, custom) {
const extensions = custom ? await resolveExtendsChain(rootDirectory, custom) : [];
let config = (0, default_1.defaultOptions)();
for (const extension of extensions) {
config = (0, extendOptions_1.extendOptions)(config, extension);
}
config.testFile = (0, combineTestCaseAndSteps_1.combineTestCaseAndSteps)(config.testFile, (0, custom_1.testCaseSteps)(config.testStep, 'testFileMetadata'));
config.testCase = (0, combineTestCaseAndSteps_1.combineTestCaseAndSteps)(config.testCase, (0, custom_1.testCaseSteps)(config.testStep, 'testCaseMetadata'));
config.testRun = (0, combineTestCaseAndSteps_1.combineTestCaseAndSteps)(config.testRun, (0, custom_1.testCaseSteps)(config.testStep, 'testRunMetadata'));
return config;
}
async function resolveExtendsChain(rootDirectory, custom) {
if (custom) {
const chain = [custom];
for (const reference of (0, utils_1.asArray)(custom.extends)) {
const resolution = typeof reference === 'string'
? await (0, utils_1.importFrom)(reference, rootDirectory)
: { dirname: rootDirectory, exports: reference };
chain.unshift(...(await resolveExtendsChain(resolution.dirname, resolution.exports)));
}
return chain;
}
return [];
}
var resolveWriter_1 = require("./resolveWriter");
Object.defineProperty(exports, "resolveWriter", { enumerable: true, get: function () { return resolveWriter_1.resolveWriter; } });
//# sourceMappingURL=index.js.map