added getSortedSetRevUnion... just because.

v1.18.x
Julian Lam 11 years ago
parent 6e597a9cdb
commit 7afe3bea59

@ -75,6 +75,18 @@ module.exports = function(redisClient, module) {
};
module.getSortedSetUnion = function(sets, start, stop, callback) {
var args = Array.prototype.slice.call(arguments, 0);
args.unshift(null);
sortedSetUnion.apply(null, args);
}
module.getSortedSetRevUnion = function(sets, start, stop, callback) {
var args = Array.prototype.slice.call(arguments, 0);
args.unshift(true);
sortedSetUnion.apply(null, args);
}
var sortedSetUnion = function(rev, sets, start, stop, callback) {
// start and stop optional
if (typeof start === 'function') {
callback = start;
@ -92,7 +104,7 @@ module.exports = function(redisClient, module) {
sets.unshift('temp');
multi.zunionstore.apply(multi, sets);
multi.zrange('temp', start, stop);
multi[rev ? 'zrevrange' : 'zrange']('temp', start, stop);
multi.del('temp');
multi.exec(function(err, results) {
if (!err && typeof callback === 'function') {

@ -330,6 +330,12 @@ describe('Test database', function() {
});
}
function getSortedSetRevUnion(callback) {
db.getSortedSetUnion(['users:joindate', 'users:derp', 'users:postcount'], function(err, data) {
callback(err, {'sortedSetUnion': data});
});
}
var sortedSetTasks = [
sortedSetAdd,
sortedSetAdd,
@ -344,7 +350,8 @@ describe('Test database', function() {
sortedSetScore,
sortedSetsScore,
getSortedSetRevRangeByScore,
getSortedSetUnion
getSortedSetUnion,
getSortedSetRevUnion
];
async.series(sortedSetTasks, function(err, results) {

Loading…
Cancel
Save