fix db.incrObjectFieldBy for mongo

convert string to int
v1.18.x
barisusakli 8 years ago
parent c4f82a3f60
commit cd9e2d17a3

@ -231,9 +231,11 @@ module.exports = function(db, module) {
module.incrObjectFieldBy = function(key, field, value, callback) {
callback = callback || helpers.noop;
if (!key) {
value = parseInt(value, 10);
if (!key || isNaN(value)) {
return callback();
}
var data = {};
field = helpers.fieldToString(field);
data[field] = value;

@ -347,7 +347,7 @@ describe('Hash methods', function() {
it('should set an objects field to 5 if object does not exist', function(done) {
db.incrObjectFieldBy('testObject16', 'field1', 5, function(err, newValue) {
assert.equal(err, null);
assert.ifError(err);
assert.equal(arguments.length, 2);
assert.equal(newValue, 5);
done();
@ -356,12 +356,20 @@ describe('Hash methods', function() {
it('should increment an object fields by passed in value and return it', function(done) {
db.incrObjectFieldBy('testObject15', 'age', 11, function(err, newValue) {
assert.equal(err, null);
assert.ifError(err);
assert.equal(arguments.length, 2);
assert.equal(newValue, 111);
done();
});
});
it('should increment an object fields by passed in value and return it', function(done) {
db.incrObjectFieldBy('testObject15', 'age', '11', function(err, newValue) {
assert.ifError(err);
assert.equal(newValue, 122);
done();
});
});
});

Loading…
Cancel
Save