UNPKG

relational-redis-store

Version:
95 lines 3.59 kB
"use strict"; var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) { if (ar || !(i in from)) { if (!ar) ar = Array.prototype.slice.call(from, 0, i); ar[i] = from[i]; } } return to.concat(ar || Array.prototype.slice.call(from)); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.getRedisMockClient = void 0; var util_1 = require("util"); var getRedisMockClient = function (redis) { return { redis: redis, // Collection hget: function () { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } return delay().then(function () { var _a; return (_a = (0, util_1.promisify)(redis.hget)).bind.apply(_a, __spreadArray([redis], args, false))(); }); }, hmget: function () { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } return delay().then(function () { var _a; return (_a = (0, util_1.promisify)(redis.hmget)).bind.apply(_a, __spreadArray([redis], args, false))(); }); }, hgetall: function () { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } return delay().then(function () { var _a; return (_a = (0, util_1.promisify)(redis.hgetall)).bind.apply(_a, __spreadArray([redis], args, false))(); }); }, hset: function () { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } return delay().then(function () { var _a; return (_a = (0, util_1.promisify)(redis.hset)).bind.apply(_a, __spreadArray([redis], args, false))(); }); }, multi: redis.multi.bind(redis), execMulti: function (multi) { return delay().then(function () { return new Promise(function (resolve, reject) { return multi.exec(function (err, data) { return (err ? reject(err) : resolve(data)); }); }); }); }, del: function (key) { return delay().then(function () { return new Promise(function (resolve, reject) { redis.del(key, function (err, response) { if (response === 1) { resolve(1); } else { reject(0); } }); }); }); }, // Queue rpush: (0, util_1.promisify)(redis.rpush).bind(redis), lpop: (0, util_1.promisify)(redis.lpop).bind(redis), lrem: (0, util_1.promisify)(redis.lrem).bind(redis), llen: (0, util_1.promisify)(redis.llen).bind(redis), }; }; exports.getRedisMockClient = getRedisMockClient; exports.getRedisMockClient.DELAY = 10; var delay = function (ms) { if (ms === void 0) { ms = exports.getRedisMockClient.DELAY; } return new Promise(function (resolve) { setTimeout(resolve, ms); }); }; //# sourceMappingURL=redisMock.js.map