@honeybook/jest-stare
Version:
jest html reporter (results processor) to view HTML jest results, save raw JSON, and invoke multiple reporters
67 lines • 5.33 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.Config = void 0;
const Constants_1 = require("./Constants");
const IJestStareConfig_1 = require("./doc/IJestStareConfig");
const EnvVars_1 = require("./EnvVars");
const IO_1 = require("../utils/IO");
class Config {
constructor(mLogger, mExplicitConfig, mProcessParms) {
this.mLogger = mLogger;
this.mExplicitConfig = mExplicitConfig;
this.mProcessParms = mProcessParms;
}
buildConfig() {
const packageJsonConfig = this.getJestStareConfig();
const envVars = new EnvVars_1.EnvVars();
const mergedEnvAndPackageJsonConfig = envVars.resolve(packageJsonConfig, envVars.read());
const config = this.mExplicitConfig || mergedEnvAndPackageJsonConfig;
if (this.mExplicitConfig != null) {
Object.keys(mergedEnvAndPackageJsonConfig).forEach((key) => {
if (this.mExplicitConfig[key] == null && mergedEnvAndPackageJsonConfig[key] != null) {
config[key] = mergedEnvAndPackageJsonConfig[key];
}
});
}
if (config.resultDir == null) {
config.resultDir = Constants_1.Constants.DEFAULT_RESULTS_DIR;
}
if (config.resultDir[config.resultDir.length - 1] !== "/") {
config.resultDir += "/";
}
if (config.log != null) {
this.mLogger.on = config.log;
}
if (this.mExplicitConfig != null) {
if (this.mProcessParms && this.mProcessParms.reporter) {
}
else {
this.mLogger.info(Constants_1.Constants.OVERRIDE_JEST_STARE_CONFIG);
}
}
if (config.resultHtml == null) {
this.mLogger.debug("Setting to default resultHtml");
config.resultHtml = Constants_1.Constants.MAIN_HTML;
}
else {
if (config.resultHtml.indexOf(Constants_1.Constants.HTML_EXTENSION) === -1) {
config.resultHtml = config.resultHtml + Constants_1.Constants.HTML_EXTENSION;
}
}
if (config.resultJson == null) {
config.resultJson = Constants_1.Constants.RESULTS_RAW;
}
return config;
}
getJestStareConfig() {
const packageJsonObject = IO_1.IO.readPackageJson();
if (packageJsonObject[IJestStareConfig_1.PACKAGE_JSON_KEY] == null) {
return {};
}
else {
return packageJsonObject[IJestStareConfig_1.PACKAGE_JSON_KEY];
}
}
}
exports.Config = Config;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Byb2Nlc3Nvci9Db25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsMkNBQXdDO0FBQ3hDLDZEQUE0RTtBQUM1RSx1Q0FBb0M7QUFHcEMsb0NBQWlDO0FBT2pDLE1BQWEsTUFBTTtJQU9mLFlBQW9CLE9BQWUsRUFBVSxlQUFpQyxFQUFVLGFBQTRCO1FBQWhHLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFBVSxvQkFBZSxHQUFmLGVBQWUsQ0FBa0I7UUFBVSxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtJQUFJLENBQUM7SUFPbEgsV0FBVztRQUdkLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFHcEQsTUFBTSxPQUFPLEdBQUcsSUFBSSxpQkFBTyxFQUFFLENBQUM7UUFDOUIsTUFBTSw2QkFBNkIsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLGlCQUFpQixFQUFFLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBR3pGLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxlQUFlLElBQUksNkJBQTZCLENBQUM7UUFHckUsSUFBSSxJQUFJLENBQUMsZUFBZSxJQUFJLElBQUksRUFBRTtZQUM5QixNQUFNLENBQUMsSUFBSSxDQUFDLDZCQUE2QixDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7Z0JBQ3ZELElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsSUFBSSxJQUFJLElBQUksNkJBQTZCLENBQUMsR0FBRyxDQUFDLElBQUksSUFBSSxFQUFFO29CQUNqRixNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsNkJBQTZCLENBQUMsR0FBRyxDQUFDLENBQUM7aUJBQ3BEO1lBQ0wsQ0FBQyxDQUFDLENBQUM7U0FDTjtRQUVELElBQUksTUFBTSxDQUFDLFNBQVMsSUFBSSxJQUFJLEVBQUU7WUFDMUIsTUFBTSxDQUFDLFNBQVMsR0FBRyxxQkFBUyxDQUFDLG1CQUFtQixDQUFDO1NBQ3BEO1FBRUQsSUFBSSxNQUFNLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxLQUFLLEdBQUcsRUFBRTtZQUN2RCxNQUFNLENBQUMsU0FBUyxJQUFJLEdBQUcsQ0FBQztTQUMzQjtRQUtELElBQUksTUFBTSxDQUFDLEdBQUcsSUFBSSxJQUFJLEVBQUU7WUFDcEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQztTQUNoQztRQUlELElBQUksSUFBSSxDQUFDLGVBQWUsSUFBSSxJQUFJLEVBQUU7WUFHOUIsSUFBSSxJQUFJLENBQUMsYUFBYSxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFO2FBRXREO2lCQUFNO2dCQUNILElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLHFCQUFTLENBQUMsMEJBQTBCLENBQUMsQ0FBQzthQUMzRDtTQUNKO1FBRUQsSUFBSSxNQUFNLENBQUMsVUFBVSxJQUFJLElBQUksRUFBRTtZQUMzQixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO1lBQ3BELE1BQU0sQ0FBQyxVQUFVLEdBQUcscUJBQVMsQ0FBQyxTQUFTLENBQUM7U0FDM0M7YUFBTTtZQUNILElBQUksTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMscUJBQVMsQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRTtnQkFFNUQsTUFBTSxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxHQUFHLHFCQUFTLENBQUMsY0FBYyxDQUFDO2FBQ3BFO1NBQ0o7UUFFRCxJQUFJLE1BQU0sQ0FBQyxVQUFVLElBQUksSUFBSSxFQUFFO1lBQzNCLE1BQU0sQ0FBQyxVQUFVLEdBQUcscUJBQVMsQ0FBQyxXQUFXLENBQUM7U0FDN0M7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDO0lBU08sa0JBQWtCO1FBQ3RCLE1BQU0saUJBQWlCLEdBQUcsT0FBRSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQy9DLElBQUksaUJBQWlCLENBQUMsbUNBQWdCLENBQUMsSUFBSSxJQUFJLEVBQUU7WUFFN0MsT0FBTyxFQUFFLENBQUM7U0FDYjthQUFNO1lBRUgsT0FBTyxpQkFBaUIsQ0FBQyxtQ0FBZ0IsQ0FBQyxDQUFDO1NBQzlDO0lBQ0wsQ0FBQztDQUVKO0FBakdELHdCQWlHQyJ9