From aac9c035fc23811cd4098cbeefa1dd61b76322c9 Mon Sep 17 00:00:00 2001 From: Manuel Trezza <5673677+mtrezza@users.noreply.github.com> Date: Mon, 4 Sep 2023 19:42:33 +0200 Subject: [PATCH 1/5] Update CloudCode.spec.js --- spec/CloudCode.spec.js | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/spec/CloudCode.spec.js b/spec/CloudCode.spec.js index 9a39664614..371b5fc43a 100644 --- a/spec/CloudCode.spec.js +++ b/spec/CloudCode.spec.js @@ -2398,6 +2398,39 @@ describe('beforeFind hooks', () => { }); }); + it('sets correct beforeFind trigger isGet parameter for Parse.Object.get request', async() => { + const hook = { + method: (req) => { + expect(req.isGet).toEqual(true); + return Promise.resolve(); + }, + }; + spyOn(hook, 'method').and.callThrough(); + Parse.Cloud.beforeFind('MyObject', hook.method); + const obj = new Parse.Object('MyObject'); + await obj.save(); + const getObj = await obj.get(); + expect(getObj).toBeInstanceOf(Parse.Object); + expect(hook.method).toHaveBeenCalled(1); + }); + + it('sets correct beforeFind trigger isGet parameter for Parse.Query.find request', async() => { + const hook = { + method: (req) => { + expect(req.isGet).toEqual(false); + return Promise.resolve(); + }, + }; + spyOn(hook, 'method').and.callThrough(); + Parse.Cloud.beforeFind('MyObject', hook.method); + const obj = new Parse.Object('MyObject'); + await obj.save(); + const query = new Parse.Query('MyObject'); + const findObjs = await query.find(); + expect(findObjs?.[0]).toBeInstanceOf(Parse.Object); + expect(hook.method).toHaveBeenCalled(1); + }); + it('should have request headers', done => { Parse.Cloud.beforeFind('MyObject', req => { expect(req.headers).toBeDefined(); From 723917e3adce50c18497d602cd29ab6ea7499194 Mon Sep 17 00:00:00 2001 From: Manuel Trezza <5673677+mtrezza@users.noreply.github.com> Date: Mon, 4 Sep 2023 19:53:01 +0200 Subject: [PATCH 2/5] fix expect --- spec/CloudCode.spec.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/spec/CloudCode.spec.js b/spec/CloudCode.spec.js index 371b5fc43a..a13e1de8d4 100644 --- a/spec/CloudCode.spec.js +++ b/spec/CloudCode.spec.js @@ -2411,7 +2411,7 @@ describe('beforeFind hooks', () => { await obj.save(); const getObj = await obj.get(); expect(getObj).toBeInstanceOf(Parse.Object); - expect(hook.method).toHaveBeenCalled(1); + expect(hook.method).toHaveBeenCalledTimes(1); }); it('sets correct beforeFind trigger isGet parameter for Parse.Query.find request', async() => { @@ -2428,7 +2428,7 @@ describe('beforeFind hooks', () => { const query = new Parse.Query('MyObject'); const findObjs = await query.find(); expect(findObjs?.[0]).toBeInstanceOf(Parse.Object); - expect(hook.method).toHaveBeenCalled(1); + expect(hook.method).toHaveBeenCalledTimes(1); }); it('should have request headers', done => { From 74a657b2ef8c9410d6cf4acd7f9786648801290b Mon Sep 17 00:00:00 2001 From: Manuel Trezza <5673677+mtrezza@users.noreply.github.com> Date: Mon, 4 Sep 2023 20:11:16 +0200 Subject: [PATCH 3/5] Update CloudCode.spec.js --- spec/CloudCode.spec.js | 27 ++++++++++++++++++++++----- 1 file changed, 22 insertions(+), 5 deletions(-) diff --git a/spec/CloudCode.spec.js b/spec/CloudCode.spec.js index a13e1de8d4..c8a78e8ac7 100644 --- a/spec/CloudCode.spec.js +++ b/spec/CloudCode.spec.js @@ -2398,9 +2398,9 @@ describe('beforeFind hooks', () => { }); }); - it('sets correct beforeFind trigger isGet parameter for Parse.Object.get request', async() => { + fit('sets correct beforeFind trigger isGet parameter for Parse.Object.fetch request', async () => { const hook = { - method: (req) => { + method: req => { expect(req.isGet).toEqual(true); return Promise.resolve(); }, @@ -2409,14 +2409,31 @@ describe('beforeFind hooks', () => { Parse.Cloud.beforeFind('MyObject', hook.method); const obj = new Parse.Object('MyObject'); await obj.save(); - const getObj = await obj.get(); + const getObj = await obj.fetch(); expect(getObj).toBeInstanceOf(Parse.Object); expect(hook.method).toHaveBeenCalledTimes(1); }); - it('sets correct beforeFind trigger isGet parameter for Parse.Query.find request', async() => { + fit('sets correct beforeFind trigger isGet parameter for Parse.Query.get request', async () => { const hook = { - method: (req) => { + method: req => { + expect(req.isGet).toEqual(true); + return Promise.resolve(); + }, + }; + spyOn(hook, 'method').and.callThrough(); + Parse.Cloud.beforeFind('MyObject', hook.method); + const obj = new Parse.Object('MyObject'); + await obj.save(); + const query = new Parse.Query('MyObject'); + const getObj = await query.get(obj.id); + expect(getObj).toBeInstanceOf(Parse.Object); + expect(hook.method).toHaveBeenCalledTimes(1); + }); + + fit('sets correct beforeFind trigger isGet parameter for Parse.Query.find request', async () => { + const hook = { + method: req => { expect(req.isGet).toEqual(false); return Promise.resolve(); }, From 1a0d717fa03416323c1268c411a499c16af64063 Mon Sep 17 00:00:00 2001 From: Manuel Trezza <5673677+mtrezza@users.noreply.github.com> Date: Mon, 4 Sep 2023 20:38:52 +0200 Subject: [PATCH 4/5] Update CloudCode.spec.js --- spec/CloudCode.spec.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spec/CloudCode.spec.js b/spec/CloudCode.spec.js index c8a78e8ac7..42259512bc 100644 --- a/spec/CloudCode.spec.js +++ b/spec/CloudCode.spec.js @@ -2417,7 +2417,7 @@ describe('beforeFind hooks', () => { fit('sets correct beforeFind trigger isGet parameter for Parse.Query.get request', async () => { const hook = { method: req => { - expect(req.isGet).toEqual(true); + expect(req.isGet).toEqual(false); return Promise.resolve(); }, }; From cbc24637503a7b4d192a68f4da20c1f5af3aa6b4 Mon Sep 17 00:00:00 2001 From: Manuel Trezza <5673677+mtrezza@users.noreply.github.com> Date: Wed, 6 Sep 2023 02:29:41 +0200 Subject: [PATCH 5/5] remove fit --- spec/CloudCode.spec.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/spec/CloudCode.spec.js b/spec/CloudCode.spec.js index 42259512bc..14a64c4df4 100644 --- a/spec/CloudCode.spec.js +++ b/spec/CloudCode.spec.js @@ -2398,7 +2398,7 @@ describe('beforeFind hooks', () => { }); }); - fit('sets correct beforeFind trigger isGet parameter for Parse.Object.fetch request', async () => { + it('sets correct beforeFind trigger isGet parameter for Parse.Object.fetch request', async () => { const hook = { method: req => { expect(req.isGet).toEqual(true); @@ -2414,7 +2414,7 @@ describe('beforeFind hooks', () => { expect(hook.method).toHaveBeenCalledTimes(1); }); - fit('sets correct beforeFind trigger isGet parameter for Parse.Query.get request', async () => { + it('sets correct beforeFind trigger isGet parameter for Parse.Query.get request', async () => { const hook = { method: req => { expect(req.isGet).toEqual(false); @@ -2431,7 +2431,7 @@ describe('beforeFind hooks', () => { expect(hook.method).toHaveBeenCalledTimes(1); }); - fit('sets correct beforeFind trigger isGet parameter for Parse.Query.find request', async () => { + it('sets correct beforeFind trigger isGet parameter for Parse.Query.find request', async () => { const hook = { method: req => { expect(req.isGet).toEqual(false);