UNPKG

ivr-tester

Version:

An automated testing framework for IVR call flows

26 lines (25 loc) 1.1 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.validateAndEnrichScenario = void 0; const joi_1 = __importDefault(require("joi")); const scenarioSchema = joi_1.default.object({ name: joi_1.default.string().required(), steps: joi_1.default.array().items(joi_1.default.object({ whenPrompt: joi_1.default.function().required(), then: joi_1.default.object().required(), silenceAfterPrompt: joi_1.default.number().required(), timeout: joi_1.default.number().required(), })), }).required(); const schema = joi_1.default.array().items(scenarioSchema).unique("name"); const validateAndEnrichScenario = (scenario) => { const scenarios = Array.isArray(scenario) ? scenario : [scenario]; const { error, value } = schema.validate(scenarios, { presence: "required", }); return { scenarios: value, error }; }; exports.validateAndEnrichScenario = validateAndEnrichScenario;