swagger-poser

0.0.2 • Public • Published

Swagger Poser

NPM version Build Status Coverage Status Dependency Status Dev Dependency Status

Use Swagger Poser to generate mock data that match a Swagger spec

Install

npm

Install swagger-poser with npm:

npm install swagger-poser --save

Example usage

Basic

var poser = require('swagger-poser');
 
var json = JSON.parse(fs.readFileSync('swagger.json').toString());
 
var generator = poser.from(json);
 
var sample = generator.generate('Pet')
 
console.log(sample);
// {
//   "name": "veniam quia aliquam molestiae laborum",
//   "photoUrls": [
//     "porro",
//     "tenetur",
//     "id esse tempore adipisci temporibus"
//   ]
// }

Using definition merging

Model specific config

var poser = require('swagger-poser');
 
var json = JSON.parse(fs.readFileSync('swagger.json').toString());
 
var petConfigJson = {
    properties: {
        name: {
            faker: 'name.firstName'
        }
    }
});
 
var generator = poser.from(json).withModelConfig('Pet', petConfigJson);
 
var sample = generator.generate('Pet')
 
console.log(sample);
// {
//   "name": "Peter",
//   "photoUrls": [
//     "porro",
//     "tenetur",
//     "id esse tempore adipisci temporibus"
//   ]
// }

General config

var poser = require('swagger-poser');
 
var json = JSON.parse(fs.readFileSync('swagger.json').toString());
 
var configJson = {
    {
        Pet: {
            properties: {
                id: {
                    faker: 'random.number'
                },
                name: {
                    faker: 'name.firstName'
                }
            }
        }
    }
});
 
var generator = poser.from(json).withConfig(configJson);
 
var sample = generator.generate('Pet')
 
console.log(sample);
// {
//   "name": "Peter",
//   "photoUrls": [
//     "porro",
//     "tenetur",
//     "id esse tempore adipisci temporibus"
//   ]
// }

Model specific Config applied to all model definitions

var poser = require('swagger-poser');
 
var json = JSON.parse(fs.readFileSync('swagger.json').toString());
 
var configJson = {
    properties: {
        name: {
            faker: 'name.firstName'
        }
    }
});
 
var generator = poser.from(json).withConfigForAllModels(configJson);
 
var sample = generator.generate('Pet')
 
console.log(sample);
// {
//   "name": "Peter",
//   "photoUrls": [
//     "porro",
//     "tenetur",
//     "id esse tempore adipisci temporibus"
//   ]
// }

Package Sidebar

Install

npm i swagger-poser

Weekly Downloads

0

Version

0.0.2

License

MIT

Last publish

Collaborators

  • blackhawk56