UNPKG

perfrunner

Version:

Command-line-interface for the perfrunner - automated UI performance test tool

27 lines (26 loc) 1.35 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.generateConfig = void 0; const fs_1 = require("fs"); const path_1 = require("path"); const perfrunner_core_1 = require("perfrunner-core"); const errors_1 = require("../../errors"); const utils_1 = require("../../utils"); const json_config_1 = require("./json-config"); const parser_1 = require("./parser"); function generateConfig(configName, outputToFolder) { const { urls } = (0, parser_1.parseInitParams)(); const fullPathToConfigFolder = (0, utils_1.withRootPath)(outputToFolder); (0, utils_1.ensureFolderCreated)(fullPathToConfigFolder); const fullPathToConfig = (0, path_1.join)(fullPathToConfigFolder, configName); const isConfigExisted = (0, fs_1.existsSync)(fullPathToConfig); if (isConfigExisted) { throw new Error(errors_1.CONFIG_SHOULD_NOT_OVERRIDEN); } const config = Object.assign(Object.assign({}, json_config_1.defaultJsonConfig), { page: urls.map((url) => ({ url, onAfterPageLoadedScript: '', waitFor: '' })) }); perfrunner_core_1.logger.log(`Creating ${configName}...`); (0, fs_1.writeFileSync)(fullPathToConfig, JSON.stringify(config, null, 4), { encoding: 'utf-8' }); perfrunner_core_1.logger.log(`Done`); return 0; } exports.generateConfig = generateConfig;