This commit is contained in:
Barış Soner Uşaklı
2018-02-01 14:33:00 -05:00
parent 2e2032cca1
commit b084a596fa
3 changed files with 19 additions and 3 deletions

View File

@@ -277,7 +277,7 @@ module.exports = function (db, module) {
callback = callback || helpers.noop;
value = parseInt(value, 10);
if (!key || isNaN(value)) {
return callback();
return callback(null, null);
}
var data = {};

View File

@@ -117,14 +117,18 @@ module.exports = function (redisClient, module) {
};
module.incrObjectField = function (key, field, callback) {
redisClient.hincrby(key, field, 1, callback);
module.incrObjectFieldBy(key, field, 1, callback);
};
module.decrObjectField = function (key, field, callback) {
redisClient.hincrby(key, field, -1, callback);
module.incrObjectFieldBy(key, field, -1, callback);
};
module.incrObjectFieldBy = function (key, field, value, callback) {
value = parseInt(value, 10);
if (!key || isNaN(value)) {
return callback(null, null);
}
redisClient.hincrby(key, field, value, callback);
};
};

View File

@@ -438,5 +438,17 @@ describe('Hash methods', function () {
done();
});
});
it('should return null if value is NaN', function (done) {
db.incrObjectFieldBy('testObject15', 'lastonline', 'notanumber', function (err, newValue) {
assert.ifError(err);
assert.strictEqual(newValue, null);
db.isObjectField('testObject15', 'lastonline', function (err, isField) {
assert.ifError(err);
assert(!isField);
done();
});
});
});
});
});