Add request ip to request object (#4265)
* add the client ip to the request config object * add the config ip to the trigger request object * add the config ip to the functions request object * add tests * remove log * remove log
This commit is contained in:
committed by
Florent Vilmart
parent
9376b4d04a
commit
70ad9e9ffd
@@ -1239,6 +1239,17 @@ describe('Cloud Code', () => {
|
||||
});
|
||||
});
|
||||
|
||||
describe('cloud functions', () => {
|
||||
it('Should have request ip', (done) => {
|
||||
Parse.Cloud.define('myFunction', (req, res) => {
|
||||
expect(req.ip).toBeDefined();
|
||||
res.success("success");
|
||||
});
|
||||
|
||||
Parse.Cloud.run('myFunction', {}).then(() => done());
|
||||
});
|
||||
});
|
||||
|
||||
describe('beforeSave hooks', () => {
|
||||
it('should have request headers', (done) => {
|
||||
Parse.Cloud.beforeSave('MyObject', (req, res) => {
|
||||
@@ -1250,6 +1261,17 @@ describe('beforeSave hooks', () => {
|
||||
const myObject = new MyObject();
|
||||
myObject.save().then(() => done());
|
||||
});
|
||||
|
||||
it('should have request ip', (done) => {
|
||||
Parse.Cloud.beforeSave('MyObject', (req, res) => {
|
||||
expect(req.ip).toBeDefined();
|
||||
res.success();
|
||||
});
|
||||
|
||||
const MyObject = Parse.Object.extend('MyObject');
|
||||
const myObject = new MyObject();
|
||||
myObject.save().then(() => done());
|
||||
});
|
||||
});
|
||||
|
||||
describe('afterSave hooks', () => {
|
||||
@@ -1263,6 +1285,17 @@ describe('afterSave hooks', () => {
|
||||
myObject.save()
|
||||
.then(() => done());
|
||||
});
|
||||
|
||||
it('should have request ip', (done) => {
|
||||
Parse.Cloud.afterSave('MyObject', (req, res) => {
|
||||
expect(req.ip).toBeDefined();
|
||||
res.success();
|
||||
});
|
||||
|
||||
const MyObject = Parse.Object.extend('MyObject');
|
||||
const myObject = new MyObject();
|
||||
myObject.save().then(() => done());
|
||||
});
|
||||
});
|
||||
|
||||
describe('beforeDelete hooks', () => {
|
||||
@@ -1278,6 +1311,19 @@ describe('beforeDelete hooks', () => {
|
||||
.then(myObj => myObj.destroy())
|
||||
.then(() => done());
|
||||
});
|
||||
|
||||
it('should have request ip', (done) => {
|
||||
Parse.Cloud.beforeDelete('MyObject', (req, res) => {
|
||||
expect(req.ip).toBeDefined();
|
||||
res.success();
|
||||
});
|
||||
|
||||
const MyObject = Parse.Object.extend('MyObject');
|
||||
const myObject = new MyObject();
|
||||
myObject.save()
|
||||
.then(myObj => myObj.destroy())
|
||||
.then(() => done());
|
||||
});
|
||||
});
|
||||
|
||||
describe('afterDelete hooks', () => {
|
||||
@@ -1292,6 +1338,18 @@ describe('afterDelete hooks', () => {
|
||||
.then(myObj => myObj.destroy())
|
||||
.then(() => done());
|
||||
});
|
||||
|
||||
it('should have request ip', (done) => {
|
||||
Parse.Cloud.afterDelete('MyObject', (req) => {
|
||||
expect(req.ip).toBeDefined();
|
||||
});
|
||||
|
||||
const MyObject = Parse.Object.extend('MyObject');
|
||||
const myObject = new MyObject();
|
||||
myObject.save()
|
||||
.then(myObj => myObj.destroy())
|
||||
.then(() => done());
|
||||
});
|
||||
});
|
||||
|
||||
describe('beforeFind hooks', () => {
|
||||
@@ -1448,6 +1506,26 @@ describe('beforeFind hooks', () => {
|
||||
})
|
||||
.then(() => done());
|
||||
});
|
||||
|
||||
it('should have request ip', (done) => {
|
||||
Parse.Cloud.beforeFind('MyObject', (req) => {
|
||||
expect(req.ip).toBeDefined();
|
||||
});
|
||||
|
||||
const MyObject = Parse.Object.extend('MyObject');
|
||||
const myObject = new MyObject();
|
||||
myObject.save()
|
||||
.then((myObj) => {
|
||||
const query = new Parse.Query('MyObject');
|
||||
query.equalTo('objectId', myObj.id);
|
||||
return Promise.all([
|
||||
query.get(myObj.id),
|
||||
query.first(),
|
||||
query.find(),
|
||||
]);
|
||||
})
|
||||
.then(() => done());
|
||||
});
|
||||
});
|
||||
|
||||
describe('afterFind hooks', () => {
|
||||
@@ -1667,6 +1745,27 @@ describe('afterFind hooks', () => {
|
||||
.then(() => done());
|
||||
});
|
||||
|
||||
it('should have request ip', (done) => {
|
||||
Parse.Cloud.afterFind('MyObject', (req, res) => {
|
||||
expect(req.ip).toBeDefined();
|
||||
res.success();
|
||||
});
|
||||
|
||||
const MyObject = Parse.Object.extend('MyObject');
|
||||
const myObject = new MyObject();
|
||||
myObject.save()
|
||||
.then((myObj) => {
|
||||
const query = new Parse.Query('MyObject');
|
||||
query.equalTo('objectId', myObj.id);
|
||||
return Promise.all([
|
||||
query.get(myObj.id),
|
||||
query.first(),
|
||||
query.find(),
|
||||
]);
|
||||
})
|
||||
.then(() => done());
|
||||
});
|
||||
|
||||
it('should validate triggers correctly', () => {
|
||||
expect(() => {
|
||||
Parse.Cloud.beforeSave('_Session', () => {});
|
||||
|
||||
Reference in New Issue
Block a user