@@ -2068,4 +2068,19 @@ describe('Parse.Object testing', () => {
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
it('isNew in cloud code', async () => {
|
||||
Parse.Cloud.beforeSave('CloudCodeIsNew', req => {
|
||||
expect(req.object.isNew()).toBeTruthy();
|
||||
expect(req.object.id).toBeUndefined();
|
||||
});
|
||||
|
||||
Parse.Cloud.afterSave('CloudCodeIsNew', req => {
|
||||
expect(req.object.isNew()).toBeFalsy();
|
||||
expect(req.object.id).toBeDefined();
|
||||
});
|
||||
|
||||
const object = new Parse.Object('CloudCodeIsNew');
|
||||
await object.save();
|
||||
});
|
||||
});
|
||||
|
||||
@@ -446,6 +446,28 @@ describe('rest create', () => {
|
||||
});
|
||||
});
|
||||
|
||||
it('cannot set id', done => {
|
||||
const headers = {
|
||||
'Content-Type': 'application/json',
|
||||
'X-Parse-Application-Id': 'test',
|
||||
'X-Parse-REST-API-Key': 'rest',
|
||||
};
|
||||
request({
|
||||
headers: headers,
|
||||
method: 'POST',
|
||||
url: 'http://localhost:8378/1/classes/TestObject',
|
||||
body: JSON.stringify({
|
||||
foo: 'bar',
|
||||
id: 'hello',
|
||||
}),
|
||||
}).then(fail, response => {
|
||||
const b = response.data;
|
||||
expect(b.code).toEqual(105);
|
||||
expect(b.error).toEqual('id is an invalid field name.');
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
it('test default session length', done => {
|
||||
const user = {
|
||||
username: 'asdf',
|
||||
|
||||
@@ -52,6 +52,12 @@ function RestWrite(
|
||||
'objectId is an invalid field name.'
|
||||
);
|
||||
}
|
||||
if (!query && data.id) {
|
||||
throw new Parse.Error(
|
||||
Parse.Error.INVALID_KEY_NAME,
|
||||
'id is an invalid field name.'
|
||||
);
|
||||
}
|
||||
|
||||
// When the operation is complete, this.response may have several
|
||||
// fields.
|
||||
|
||||
Reference in New Issue
Block a user