unmock-core
Version:
[][npmjs] [](https://circleci.com/gh/unmock/unmock-js) [](h
62 lines • 2.02 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const sinon = require("sinon");
exports.sinon = sinon;
const backend_1 = require("./backend");
const snapshotter_1 = require("./loggers/snapshotter");
const winston_logger_1 = require("./loggers/winston-logger");
const nock_1 = require("./nock");
const settings_1 = require("./settings");
var transformers_1 = require("./service/state/transformers");
exports.dsl = transformers_1.default;
var nock_2 = require("./nock");
exports.u = nock_2.u;
const utils = { snapshotter: snapshotter_1.default };
exports.utils = utils;
class UnmockPackage {
constructor(backend, options) {
this.logger = { log: () => undefined };
this.backend = backend;
this.logger = (options && options.logger) || this.logger;
this.allowedHosts = new settings_1.AllowedHosts();
this.flaky = new settings_1.BooleanSetting();
this.useInProduction = new settings_1.BooleanSetting();
}
on() {
const opts = {
useInProduction: () => this.useInProduction.get(),
isWhitelisted: (url) => this.allowedHosts.isWhitelisted(url),
log: (message) => this.logger.log(message),
flaky: () => this.flaky.get(),
};
this.backend.initialize(opts);
return this;
}
init() {
return this.on();
}
initialize() {
return this.on();
}
off() {
this.backend.reset();
}
get services() {
return this.backend.services;
}
nock(baseUrl, name) {
return nock_1.nockify({ backend: this.backend, baseUrl, name });
}
reloadServices() {
this.backend.loadServices();
}
reset() {
Object.values(this.backend.services).forEach(service => service.reset());
}
}
exports.UnmockPackage = UnmockPackage;
const unmock = new UnmockPackage(new backend_1.default(), {
logger: new winston_logger_1.default(),
});
exports.default = unmock;
//# sourceMappingURL=index.js.map