UNPKG

graphql-mocks

Version:

Tools for setting up graphql test resolvers

28 lines (26 loc) 904 B
'use strict'; require('graphql'); var constants = require('../resolver/constants.js'); var createWrapper = require('../resolver/create-wrapper.js'); function getRandomInt(min, max) { min = Math.ceil(min); max = Math.floor(max); return Math.round(Math.random() * (max - min) + min); } async function wait(ms) { return new Promise(resolve => { setTimeout(resolve, ms); }); } function latencyWrapper(latency = 0) { const finalLatency = Array.isArray(latency) ? getRandomInt(latency[0], latency[1]) : latency; return createWrapper.createWrapper('latency-wrapper', constants.WrapperFor.ANY, function (originalResolver) { // eslint-disable-next-line @typescript-eslint/no-explicit-any return async function (...args) { await wait(finalLatency); return originalResolver(...args); }; }); } exports.latencyWrapper = latencyWrapper; //# sourceMappingURL=latency.js.map