THIS REPO HAS BEEN DEPRECATED. THE DEVELOPMENT HAS MOVED TO A NEW REPOSITORY: https://github.com/NeuraLegion/har-sdk
Tool for generation samples based on OpenAPI payload/response schema
- deterministic (given a particular input, will always produce the same output)
- Supports
allOf - Supports
additionalProperties - Uses
default,const,enumandexampleswhere possible - Full array support: supports
minItems, and tuples (itemsas an array) - Supports
minLength,maxLength,min,max,exclusiveMinimum,exclusiveMaximum - Supports the next
stringformats:- password
- date-time
- date
- ipv4
- ipv6
- hostname
- uri
- Infers schema type automatically following same rules as json-schema-faker
- Support for
$refresolving
Install using npm
npm install @neuralegion/openapi-sampler --save
or using yarn
yarn add @neuralegion/openapi-sampler
Then require it in your code:
var OpenAPISampler = require('@neuralegion/openapi-sampler');- schema (required) -
objectA OpenAPI Schema Object - options (optional) -
objectAvailable options:- skipNonRequired -
booleanDon't include non-required object properties not specified inrequiredproperty of the schema object - skipReadOnly -
booleanDon't includereadOnlyobject properties - skipWriteOnly -
booleanDon't includewriteOnlyobject properties - quiet -
booleanDon't log console warning messages
- skipNonRequired -
- spec - whole specification where the schema is taken from. Required only when schema may contain
$ref. spec must not contain any external references
const OpenAPISampler = require('.');
OpenAPISampler.sample({
type: 'object',
properties: {
a: {type: 'integer', minimum: 10},
b: {type: 'string', format: 'password', minLength: 10},
c: {type: 'boolean', readOnly: true}
}
}, {skipReadOnly: true});
// { a: 10, b: 'pa$$word_q' }