UNPKG

swagger-to-mock

Version:

mock data generator from Swagger (OpenAPI 3)

47 lines 3.45 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var response_1 = require("./response"); var util_1 = require("./util"); var parse_1 = require("./parse"); var dataType_1 = require("./dataType"); // Compose mock data exports.composeMockData = function (responses, schemas) { var ret = {}; Object.keys(responses).forEach(function (path) { var res = responses[path]; var pathKey = util_1.normalizePath(path); if (res) { var val = res[response_1.APPLICATION_JSON]; if ("example" in val) { ret[pathKey] = val.example; } else if ("examples" in val) { ret[pathKey] = val.examples; } else if ("schema" in val) { var schema = val.schema; var ref = schema[parse_1.REF]; if (ref) { var schemaName = util_1.getSchemaName(ref); if (schemaName) { var values = schemas[schemaName]; ret[pathKey] = values; } } else { if (dataType_1.isObject(schema)) { ret[pathKey] = parse_1.parseObject(schema, schemas); } else if (dataType_1.isArray(schema)) { ret[pathKey] = parse_1.parseArray(schema, schemas); } else { ret[pathKey] = val.schema.properties; } } } } }); return ret; }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9zZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jb21wb3NlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsdUNBQTZEO0FBRTdELCtCQUFzRDtBQUN0RCxpQ0FBdUQ7QUFDdkQsdUNBQStDO0FBTS9DLG9CQUFvQjtBQUNQLFFBQUEsZUFBZSxHQUFHLFVBQzdCLFNBQXdCLEVBQ3hCLE9BQWdCO0lBRWhCLElBQUksR0FBRyxHQUFRLEVBQUUsQ0FBQztJQUNsQixNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFBLElBQUk7UUFDakMsSUFBTSxHQUFHLEdBQVEsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2pDLElBQU0sT0FBTyxHQUFHLG9CQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDcEMsSUFBSSxHQUFHLEVBQUU7WUFDUCxJQUFNLEdBQUcsR0FBRyxHQUFHLENBQUMsMkJBQWdCLENBQUMsQ0FBQztZQUNsQyxJQUFJLFNBQVMsSUFBSSxHQUFHLEVBQUU7Z0JBQ3BCLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDO2FBQzVCO2lCQUFNLElBQUksVUFBVSxJQUFJLEdBQUcsRUFBRTtnQkFDNUIsR0FBRyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEdBQUcsQ0FBQyxRQUFRLENBQUM7YUFDN0I7aUJBQU0sSUFBSSxRQUFRLElBQUksR0FBRyxFQUFFO2dCQUNsQixJQUFBLG1CQUFNLENBQVM7Z0JBQ3ZCLElBQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxXQUFHLENBQUMsQ0FBQztnQkFDeEIsSUFBSSxHQUFHLEVBQUU7b0JBQ1AsSUFBTSxVQUFVLEdBQUcsb0JBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQztvQkFDdEMsSUFBSSxVQUFVLEVBQUU7d0JBQ2QsSUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO3dCQUNuQyxHQUFHLENBQUMsT0FBTyxDQUFDLEdBQUcsTUFBTSxDQUFDO3FCQUN2QjtpQkFDRjtxQkFBTTtvQkFDTCxJQUFJLG1CQUFRLENBQUMsTUFBTSxDQUFDLEVBQUU7d0JBQ3BCLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxtQkFBVyxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztxQkFDN0M7eUJBQU0sSUFBSSxrQkFBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFO3dCQUMxQixHQUFHLENBQUMsT0FBTyxDQUFDLEdBQUcsa0JBQVUsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7cUJBQzVDO3lCQUFNO3dCQUNMLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQztxQkFDdEM7aUJBQ0Y7YUFDRjtTQUNGO0lBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDSCxPQUFPLEdBQUcsQ0FBQztBQUNiLENBQUMsQ0FBQyJ9