UNPKG

@har-sdk/openapi-sampler

Version:

[![Maintainability](https://api.codeclimate.com/v1/badges/4acaec95c82465cb2c3d/maintainability)](https://codeclimate.com/github/NeuraLegion/har-sdk/maintainability) [![Test Coverage](https://api.codeclimate.com/v1/badges/4acaec95c82465cb2c3d/test_coverage

28 lines 963 B
import { hasItems } from '../utils'; export class ArraySampler { constructor(traverse) { this.traverse = traverse; } sample(schema, spec, options) { let arrayLength = schema.minItems || 1; if (hasItems(schema) && Array.isArray(schema.items)) { arrayLength = Math.max(arrayLength, schema.items.length); } const itemSchemaGetter = (itemNumber) => { if (hasItems(schema) && Array.isArray(schema.items)) { return schema.items[itemNumber] || {}; } return hasItems(schema) ? schema.items : {}; }; const res = []; if (!hasItems(schema)) { return res; } for (let i = 0; i < arrayLength; i++) { const itemSchema = itemSchemaGetter(i); res.push(this.traverse.traverse(itemSchema, options, spec).value); } return res; } } //# sourceMappingURL=ArraySampler.js.map