From 868ad5bdfd3321079a093e8c363012ad41398d5c Mon Sep 17 00:00:00 2001 From: Greenkeeper Date: Tue, 12 Jul 2016 16:09:16 +0200 Subject: [PATCH] =?UTF-8?q?Update=20parse=20to=20version=201.9.0=20?= =?UTF-8?q?=F0=9F=9A=80=20(#2233)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * chore(package): update parse to version 1.9.0 https://greenkeeper.io/ * Removes Hooks client API as provided by node SDK --- package.json | 2 +- spec/ParseHooks.spec.js | 26 ++++--- src/cloud-code/Parse.Hooks.js | 132 ---------------------------------- 3 files changed, 13 insertions(+), 147 deletions(-) delete mode 100644 src/cloud-code/Parse.Hooks.js diff --git a/package.json b/package.json index 2d464678..9772f71f 100644 --- a/package.json +++ b/package.json @@ -33,7 +33,7 @@ "mime": "1.3.4", "mongodb": "2.1.18", "multer": "1.1.0", - "parse": "1.8.5", + "parse": "1.9.0", "parse-server-fs-adapter": "1.0.0", "parse-server-push-adapter": "1.0.4", "parse-server-s3-adapter": "1.0.3", diff --git a/spec/ParseHooks.spec.js b/spec/ParseHooks.spec.js index 7bb4630b..f335d932 100644 --- a/spec/ParseHooks.spec.js +++ b/spec/ParseHooks.spec.js @@ -5,8 +5,6 @@ var triggers = require('../src/triggers'); var HooksController = require('../src/Controllers/HooksController').default; var express = require("express"); var bodyParser = require('body-parser'); -// Inject the hooks API -Parse.Hooks = require("../src/cloud-code/Parse.Hooks"); var port = 12345; var hookServerURL = "http://localhost:"+port; @@ -55,7 +53,7 @@ describe('Hooks', () => { expect(res.functionName).toBe("My-Test-Function"); expect(res.url).toBe("http://anotherurl") // delete - return Parse.Hooks.deleteFunction("My-Test-Function") + return Parse.Hooks.removeFunction("My-Test-Function") }) .then((res) => { // Find again! but should be deleted @@ -67,7 +65,7 @@ describe('Hooks', () => { return Promise.resolve(); }, (err) => { expect(err.code).toBe(143); - expect(err.error).toBe("no function named: My-Test-Function is defined") + expect(err.message).toBe("no function named: My-Test-Function is defined") done(); return Promise.resolve(); }) @@ -104,7 +102,7 @@ describe('Hooks', () => { expect(res.url).toBe("http://anotherurl") expect(res.objectId).toBeUndefined(); - return Parse.Hooks.deleteTrigger("MyClass","beforeDelete"); + return Parse.Hooks.removeTrigger("MyClass","beforeDelete"); }, (err) => { fail(err); done(); @@ -121,7 +119,7 @@ describe('Hooks', () => { expect(err).not.toBe(null); expect(err).not.toBe(undefined); expect(err.code).toBe(143); - expect(err.error).toBe("class MyClass does not exist") + expect(err.message).toBe("class MyClass does not exist") done(); }); }); @@ -151,8 +149,8 @@ describe('Hooks', () => { expect(err).not.toBe(undefined); expect(err).not.toBe(null); expect(err.code).toBe(143); - expect(err.error).toBe('function name: my_new_function already exits') - return Parse.Hooks.deleteFunction("my_new_function"); + expect(err.message).toBe('function name: my_new_function already exits') + return Parse.Hooks.removeFunction("my_new_function"); }).then(() => { done(); }, (err) => { @@ -170,8 +168,8 @@ describe('Hooks', () => { fail("should not be able to create the same trigger"); }, (err) => { expect(err.code).toBe(143); - expect(err.error).toBe('class MyClass already has trigger beforeSave') - return Parse.Hooks.deleteTrigger("MyClass", "beforeSave"); + expect(err.message).toBe('class MyClass already has trigger beforeSave') + return Parse.Hooks.removeTrigger("MyClass", "beforeSave"); }).then(() => { done(); }, (err) => { @@ -185,14 +183,14 @@ describe('Hooks', () => { fail("Should not succeed") }, (err) => { expect(err.code).toBe(143); - expect(err.error).toBe('no function named: A_COOL_FUNCTION is defined'); + expect(err.message).toBe('no function named: A_COOL_FUNCTION is defined'); return Parse.Hooks.getFunction("A_COOL_FUNCTION") }).then( (res) => { fail("the function should not exist"); done(); }, (err) => { expect(err.code).toBe(143); - expect(err.error).toBe('no function named: A_COOL_FUNCTION is defined'); + expect(err.message).toBe('no function named: A_COOL_FUNCTION is defined'); done(); }); }); @@ -202,14 +200,14 @@ describe('Hooks', () => { fail("Should not succeed") }, (err) => { expect(err.code).toBe(143); - expect(err.error).toBe('class AClassName does not exist'); + expect(err.message).toBe('class AClassName does not exist'); return Parse.Hooks.getTrigger("AClassName","beforeSave") }).then( (res) => { fail("the function should not exist"); done(); }, (err) => { expect(err.code).toBe(143); - expect(err.error).toBe('class AClassName does not exist'); + expect(err.message).toBe('class AClassName does not exist'); done(); }); }); diff --git a/src/cloud-code/Parse.Hooks.js b/src/cloud-code/Parse.Hooks.js deleted file mode 100644 index c96d7a3a..00000000 --- a/src/cloud-code/Parse.Hooks.js +++ /dev/null @@ -1,132 +0,0 @@ -var request = require("request"); -const send = function(method, path, body) { - - var Parse = require("parse/node").Parse; - - var options = { - method: method, - url: Parse.serverURL + path, - headers: { - 'X-Parse-Application-Id': Parse.applicationId, - 'X-Parse-Master-Key': Parse.masterKey, - 'Content-Type': 'application/json' - }, - }; - - if (body) { - if (typeof body == "object") { - options.body = JSON.stringify(body); - } else { - options.body = body; - } - } - - var promise = new Parse.Promise(); - request(options, function(err, response, body){ - if (err) { - promise.reject(err); - return; - } - body = JSON.parse(body); - if (body.error) { - promise.reject(body); - } else { - promise.resolve(body); - } - }); - return promise; -} - -var Hooks = {}; - -Hooks.getFunctions = function() { - return Hooks.get("functions"); -} - -Hooks.getTriggers = function() { - return Hooks.get("triggers"); -} - -Hooks.getFunction = function(name) { - return Hooks.get("functions", name); -} - -Hooks.getTrigger = function(className, triggerName) { - return Hooks.get("triggers", className, triggerName); -} - -Hooks.get = function(type, functionName, triggerName) { - var url = "/hooks/"+type; - if(functionName) { - url += "/"+functionName; - if (triggerName) { - url += "/"+triggerName; - } - } - return send("GET", url); -} - -Hooks.createFunction = function(functionName, url) { - return Hooks.create({functionName: functionName, url: url}); -} - -Hooks.createTrigger = function(className, triggerName, url) { - return Hooks.create({className: className, triggerName: triggerName, url: url}); -} - -Hooks.create = function(hook) { - var url; - if (hook.functionName && hook.url) { - url = "/hooks/functions"; - } else if (hook.className && hook.triggerName && hook.url) { - url = "/hooks/triggers"; - } else { - return Promise.reject({error: 'invalid hook declaration', code: 143}); - } - return send("POST", url, hook); -} - -Hooks.updateFunction = function(functionName, url) { - return Hooks.update({functionName: functionName, url: url}); -} - -Hooks.updateTrigger = function(className, triggerName, url) { - return Hooks.update({className: className, triggerName: triggerName, url: url}); -} - - -Hooks.update = function(hook) { - var url; - if (hook.functionName && hook.url) { - url = "/hooks/functions/"+hook.functionName; - delete hook.functionName; - } else if (hook.className && hook.triggerName && hook.url) { - url = "/hooks/triggers/"+hook.className+"/"+hook.triggerName; - delete hook.className; - delete hook.triggerName; - } - return send("PUT", url, hook); -} - -Hooks.deleteFunction = function(functionName) { - return Hooks.delete({functionName: functionName}); -} - -Hooks.deleteTrigger = function(className, triggerName) { - return Hooks.delete({className: className, triggerName: triggerName}); -} - -Hooks.delete = function(hook) { - var url; - if (hook.functionName) { - url = "/hooks/functions/"+hook.functionName; - delete hook.functionName; - } else if (hook.className && hook.triggerName) { - url = "/hooks/triggers/"+hook.className+"/"+hook.triggerName; - delete hook.className; - delete hook.triggerName; - } - return send("PUT", url, '{ "__op": "Delete" }'); -} - -module.exports = Hooks