From 3ba6e613b3b601850248a6149fba5c8c0b153088 Mon Sep 17 00:00:00 2001 From: Florent Vilmart Date: Sat, 24 Sep 2016 13:53:04 -0400 Subject: [PATCH] Adds repro for #1931 (#2735) --- spec/CloudCode.spec.js | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/spec/CloudCode.spec.js b/spec/CloudCode.spec.js index a4afa491..15251ee8 100644 --- a/spec/CloudCode.spec.js +++ b/spec/CloudCode.spec.js @@ -712,6 +712,32 @@ describe('Cloud Code', () => { done(); }); }); + + it('beforeSave change propagates through the afterSave #1931', (done) => { + Parse.Cloud.beforeSave('ChangingObject', function(request, response) { + request.object.unset('file'); + request.object.unset('date'); + response.success(); + }); + + Parse.Cloud.afterSave('ChangingObject', function(request, response) { + let json = request.object.toJSON(); + expect(request.object.has("file")).toBe(false); + expect(request.object.has("date")).toBe(false); + expect(request.object.get('file')).toBeUndefined(); + return Promise.resolve(); + }); + let file = new Parse.File("yolo.txt", [1,2,3], "text/plain"); + file.save().then(() => { + let obj = new Parse.Object('ChangingObject'); + return obj.save({ file, date: new Date() }) + }).then(() => { + done(); + }, () => { + fail(); + done(); + }) + }); it('test cloud function parameter validation success', (done) => { // Register a function with validation