From e3fd4deb336b331e9a199a07ad33086eefce26ce Mon Sep 17 00:00:00 2001 From: Tyler Brock Date: Fri, 13 May 2016 16:43:06 -0700 Subject: [PATCH] Add test to ensure you can set ACL in beforeSave --- spec/ParseAPI.spec.js | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/spec/ParseAPI.spec.js b/spec/ParseAPI.spec.js index 084b7fe337..938d33bbf2 100644 --- a/spec/ParseAPI.spec.js +++ b/spec/ParseAPI.spec.js @@ -224,6 +224,34 @@ describe('miscellaneous', function() { }); }); + it('test beforeSave set object acl success', function(done) { + var acl = new Parse.ACL({ + '*': { read: true, write: false } + }); + Parse.Cloud.beforeSave('BeforeSaveAddACL', function(req, res) { + req.object.setACL(acl); + res.success(); + }); + + var obj = new Parse.Object('BeforeSaveAddACL'); + obj.set('lol', true); + obj.save().then(function() { + Parse.Cloud._removeHook('Triggers', 'beforeSave', 'BeforeSaveAddACL'); + var query = new Parse.Query('BeforeSaveAddACL'); + query.get(obj.id).then(function(objAgain) { + expect(objAgain.get('lol')).toBeTruthy(); + expect(objAgain.getACL().equals(acl)); + done(); + }, function(error) { + fail(error); + done(); + }); + }, function(error) { + fail(error); + done(); + }); + }); + it('test beforeSave returns value on create and update', (done) => { var obj = new Parse.Object('BeforeSaveChanged'); obj.set('foo', 'bing');