Skip to content

Commit 99cfd6a

Browse files
committed
Adds test to repro #2672
1 parent fe62e92 commit 99cfd6a

File tree

1 file changed

+36
-0
lines changed

1 file changed

+36
-0
lines changed

spec/ParseAPI.spec.js

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1529,4 +1529,40 @@ describe_only_db('mongo')('legacy _acl', () => {
15291529
done();
15301530
});
15311531
});
1532+
1533+
it('should not update schema beforeSave #2672', (done) => {
1534+
Parse.Cloud.beforeSave('MyObject', (request, response) => {
1535+
if (request.object.get('secret')) {
1536+
response.error('cannot set secret here');
1537+
return;
1538+
}
1539+
response.success();
1540+
});
1541+
1542+
let object = new Parse.Object('MyObject');
1543+
object.set('key', 'value');
1544+
object.save().then(() => {
1545+
return object.save({'secret': 'should not update schema'});
1546+
}).then(() => {
1547+
fail();
1548+
done();
1549+
}, () => {
1550+
return rp({
1551+
method: 'GET',
1552+
headers: {
1553+
'X-Parse-Application-Id': 'test',
1554+
'X-Parse-Master-Key': 'test'
1555+
},
1556+
uri: 'http://localhost:8378/1/schemas/MyObject',
1557+
json: true
1558+
});
1559+
}).then((res) => {
1560+
let fields = res.fields;
1561+
expect(typeof fields.secret).toBeUndefined();
1562+
done();
1563+
}, (err) => {
1564+
jfail(err);
1565+
done();
1566+
});
1567+
});
15321568
});

0 commit comments

Comments
 (0)