From 190dc5eb7504566a88bf8b4a2f21c4a4ed1eabe8 Mon Sep 17 00:00:00 2001 From: Fosco Marotto Date: Wed, 3 Feb 2016 00:02:54 -0800 Subject: [PATCH] Fixed tests and some undefined value handling. --- Schema.js | 3 +++ spec/ParseUser.spec.js | 2 +- transform.js | 1 + 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/Schema.js b/Schema.js index c9544404..66d1d452 100644 --- a/Schema.js +++ b/Schema.js @@ -212,6 +212,9 @@ Schema.prototype.validateObject = function(className, object) { var geocount = 0; var promise = this.validateClassName(className); for (var key in object) { + if (object[key] === undefined) { + continue; + } var expected = getType(object[key]); if (expected === 'geopoint') { geocount++; diff --git a/spec/ParseUser.spec.js b/spec/ParseUser.spec.js index 30fc6cc5..f4f43dd1 100644 --- a/spec/ParseUser.spec.js +++ b/spec/ParseUser.spec.js @@ -1336,7 +1336,7 @@ describe('Parse.User testing', () => { var b = JSON.parse(body); expect(b.results.length).toEqual(1); var user = b.results[0]; - expect(Object.keys(user).length).toEqual(5); + expect(Object.keys(user).length).toEqual(6); done(); }); }); diff --git a/transform.js b/transform.js index ee43b8af..26e296ef 100644 --- a/transform.js +++ b/transform.js @@ -335,6 +335,7 @@ function transformAtom(atom, force, options) { return atom; case 'undefined': + return atom; case 'symbol': case 'function': throw new Parse.Error(Parse.Error.INVALID_JSON,