ivr-tester-cli
Version:
CLI for automated testing of IVR call flows
27 lines (26 loc) • 1.17 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.jsonWhenPromptOr = void 0;
const joi_1 = __importDefault(require("joi"));
const ivr_tester_1 = require("ivr-tester");
const isAnything_1 = require("./isAnything");
const contains_1 = require("./contains");
const containsSimilarTo_1 = require("./containsSimilarTo");
const similarTo_1 = require("./similarTo");
const typeValue = "or";
exports.jsonWhenPromptOr = {
typeValue,
schema: joi_1.default.object({
type: joi_1.default.valid(typeValue).required(),
value: joi_1.default.array()
.items(joi_1.default.alternatives().try(isAnything_1.jsonWhenPromptIsAnything.schema, contains_1.jsonWhenPromptContains.schema, containsSimilarTo_1.jsonWhenPromptContainsSimilarTo.schema, similarTo_1.jsonWhenPromptSimilarTo.schema))
.required(),
}),
converter: (converter) => (json) => {
const whenPrompts = json.value.map((w) => converter(w));
return ivr_tester_1.or(...whenPrompts);
},
};