diff --git a/lib/serializer.js b/lib/serializer.js index d5a746b..10ca882 100644 --- a/lib/serializer.js +++ b/lib/serializer.js @@ -139,7 +139,7 @@ serializer.buildKey = function (hashKey, rangeKey, schema) { serializer.serializeItem = function (schema, item, options = {}) { var serialize = function (value, datatypes = {}) { - if(!value) { + if(value === null) { return null; } diff --git a/test/serializer-test.js b/test/serializer-test.js index 4609ddb..4d8fc95 100644 --- a/test/serializer-test.js +++ b/test/serializer-test.js @@ -527,6 +527,22 @@ describe('Serializer', function () { item.objects.should.eql([{number: 10, string: 'd'}]); }); + it('should serialize number array with zeros', function () { + var config = { + hashKey: 'id', + schema : { + id : Joi.number(), + resolution : Joi.array().items(Joi.number()).min(2).max(2), + } + }; + + var s = new Schema(config); + + var item = serializer.serializeItem(s, {id: 1, resolution: [0, 0]}); + + item.should.eql({id: 1, resolution: [0, 0]}); + }); + it('should return empty when serializing null value', function () { var config = { hashKey: 'email',