skutter
Version:
Skutter: Opinionated BDD Browser based test framework
36 lines (35 loc) • 1.53 kB
JavaScript
;
const file_checker_1 = require("./file-checker");
const iorchestrator_config_1 = require("../orchestrator/iorchestrator-config");
class ConfigReader {
constructor(logger) {
this.logger = logger;
}
read(skutterConfigPath) {
if (!file_checker_1.FileChecker.exists(skutterConfigPath)) {
this.logger.log(`Expected config to exist at '${skutterConfigPath}' but it was not found or access was denied.`);
throw new Error("Config file not found.");
}
let config = null;
try {
config = require(skutterConfigPath);
}
catch (skutterConfigLoadException) {
throw new Error(`Unable to load Skutter config file. ${skutterConfigLoadException.message}`);
}
let skutterConfig = {
orchestrator: new iorchestrator_config_1.OrchestratorConfig(),
featuresRootPath: config.featureRootPath,
libraryPaths: config.libraryPaths,
webServerBaseUrl: config.webServerBaseUrl,
outputRootPath: config.outputRootPath,
};
skutterConfig.orchestrator.numExecutors = config.threads;
skutterConfig.orchestrator.filters = config.filters;
skutterConfig.orchestrator.failAtJustRuns = config.failAtJustRuns;
skutterConfig.orchestrator.outputRootPath = config.outputRootPath;
skutterConfig.orchestrator.executor.verbosity = config.verbosity;
return skutterConfig;
}
}
exports.ConfigReader = ConfigReader;