UNPKG

unmock-core

Version:

[![npm](https://img.shields.io/npm/v/unmock-core.svg)][npmjs] [![CircleCI](https://circleci.com/gh/unmock/unmock-js.svg?style=svg)](https://circleci.com/gh/unmock/unmock-js) [![codecov](https://codecov.io/gh/unmock/unmock-js/branch/dev/graph/badge.svg)](h

57 lines 2.05 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const generator_1 = require("../generator"); const random_number_generator_1 = require("../random-number-generator"); const serviceStore_1 = require("../service/serviceStore"); const DEFAULT_OPTIONS = { isWhitelisted: (__) => false, randomize: () => true, log: (__) => { }, }; class UnmockFaker { constructor({ listeners, randomNumberGenerator: rng, serviceStore, optionalsProbability, minItems, }) { this.listeners = listeners ? listeners : []; this.randomNumberGenerator = rng || random_number_generator_1.randomNumberGenerator({}); this.optionalsProbability = optionalsProbability || 1.0; this.minItems = minItems || 0; this.serviceStore = serviceStore; this.createResponse = this.createResponseCreator(); this.nock = serviceStore_1.addFromNock(this.serviceStore); this.mock = serviceStore_1.addFromNock(this.serviceStore); } setOptions(options) { this.createResponse = this.createResponseCreator(options); } generate(request) { return this.createResponse(request); } get services() { return (this.serviceStore && this.serviceStore.services) || {}; } add(service) { this.serviceStore.add(service); } update(service) { this.serviceStore.updateOrAddService(service); } reset() { this.serviceStore.resetServices(); } purge() { this.serviceStore.removeAll(); } createResponseCreator(options) { return generator_1.responseCreatorFactory({ listeners: this.listeners, options: options || DEFAULT_OPTIONS, fakerOptions: { randomNumberGenerator: this.randomNumberGenerator, minItems: this.minItems, optionalsProbability: this.optionalsProbability, }, store: this.serviceStore, }); } } exports.default = UnmockFaker; //# sourceMappingURL=index.js.map