UNPKG

create-testplane

Version:

A tool for fast and simple Testplane configuration

68 lines 4.3 kB
"use strict"; var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { if (k2 === undefined) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: function() { return m[k]; } }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === undefined) k2 = k; o[k2] = m[k]; })); var __exportStar = (this && this.__exportStar) || function(m, exports) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); }; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.run = exports.defaultTestplaneTestsDir = exports.baseGeneralPrompts = exports.asExpression = exports.addModule = exports.defineVariable = exports.inquirerPrompt = void 0; const defaultToolOpts_1 = __importDefault(require("./constants/defaultToolOpts")); const package_1 = require("./package"); const utils_1 = require("./utils"); const plugins_1 = require("./plugins"); const baseGeneralPrompts_1 = __importDefault(require("./constants/baseGeneralPrompts")); exports.baseGeneralPrompts = baseGeneralPrompts_1.default; const configBuilder_1 = require("./configBuilder"); process.on("uncaughtException", err => { console.error(err.stack); process.exit(1); }); process.on("unhandledRejection", (reason, p) => { console.error("Unhandled Rejection:\n Promise: ", p, "\n Reason: ", reason); }); var utils_2 = require("./utils"); Object.defineProperty(exports, "inquirerPrompt", { enumerable: true, get: function () { return utils_2.inquirerPrompt; } }); Object.defineProperty(exports, "defineVariable", { enumerable: true, get: function () { return utils_2.defineVariable; } }); Object.defineProperty(exports, "addModule", { enumerable: true, get: function () { return utils_2.addModule; } }); Object.defineProperty(exports, "asExpression", { enumerable: true, get: function () { return utils_2.asExpression; } }); var defaultTestplaneConfig_1 = require("./constants/defaultTestplaneConfig"); Object.defineProperty(exports, "defaultTestplaneTestsDir", { enumerable: true, get: function () { return defaultTestplaneConfig_1.defaultTestplaneTestsDir; } }); const run = async ({ createBaseConfig, createOpts, generalPrompts = baseGeneralPrompts_1.default, generalPromptsHandler, createPluginsConfig, getExtraPackagesToInstall, registry = "https://registry.npmjs.org", }) => { const opts = createOpts(defaultToolOpts_1.default); const configBuilder = configBuilder_1.ConfigBuilder.create(createBaseConfig, { language: opts.language }); const packageManager = await (0, package_1.initApp)(opts.path, opts.extraQuestions); const generalPromptsHandlers = generalPromptsHandler ? [utils_1.baseGeneralPromptsHandler, generalPromptsHandler] : [utils_1.baseGeneralPromptsHandler]; configBuilder.connectTestingLibrary(); const generalAnswers = await configBuilder.handleGeneralQuestions(generalPrompts, generalPromptsHandlers, opts); const { pluginNames, configNotes } = await (0, plugins_1.getPluginNames)(opts); await configBuilder.configurePlugins({ pluginNames, createPluginsConfig, generalAnswers }); const extraPackages = getExtraPackagesToInstall ? getExtraPackagesToInstall() : { names: [], notes: [] }; const packageNamesToInstall = pluginNames.concat(extraPackages.names); if (opts.language === "ts") { (0, utils_1.extendWithTypescript)(packageNamesToInstall, opts.path); } await Promise.all([ (0, package_1.installPackages)(opts.path, packageManager, packageNamesToInstall, registry), configBuilder.write(opts.path), (0, utils_1.writeTestExample)(opts.path, opts.language), ]); (0, utils_1.printSuccessMessage)(configNotes.concat(extraPackages.notes)); }; exports.run = run; exports.default = { run: exports.run, inquirerPrompt: utils_1.inquirerPrompt, baseGeneralPrompts: baseGeneralPrompts_1.default }; __exportStar(require("./types"), exports); //# sourceMappingURL=index.js.map