Refactor cloud code tests (#1837)

* Move cloud code tests

* Remove _removeHook calls that are no longer necessary

* Use Strict
This commit is contained in:
Drew
2016-05-19 13:38:16 -07:00
committed by Tyler Brock
parent fece2a4b47
commit b2183680be
13 changed files with 496 additions and 514 deletions

View File

@@ -1,4 +1,4 @@
import { Parse } from 'parse/node';
import { Parse } from 'parse/node';
import * as triggers from '../triggers';
function validateClassNameForTriggers(className) {
@@ -40,12 +40,16 @@ ParseCloud.afterDelete = function(parseClass, handler) {
var className = getClassName(parseClass);
triggers.addTrigger(triggers.Types.afterDelete, className, handler, Parse.applicationId);
};
ParseCloud._removeHook = function(category, name, type, applicationId) {
applicationId = applicationId || Parse.applicationId;
triggers._unregister(applicationId, category, name, type);
};
ParseCloud._removeAllHooks = () => {
triggers._unregisterAll();
}
ParseCloud.httpRequest = require("./httpRequest");
module.exports = ParseCloud;

View File

@@ -1,6 +1,6 @@
// triggers.js
import Parse from 'parse/node';
import AppCache from './cache';
import Parse from 'parse/node';
import AppCache from './cache';
export const Types = {
beforeSave: 'beforeSave',
@@ -49,15 +49,19 @@ export function removeTrigger(type, className, applicationId) {
delete _triggerStore[applicationId].Triggers[type][className]
}
export function _unregister(a,b,c,d) {
if (d) {
removeTrigger(c,d,a);
delete _triggerStore[a][b][c][d];
export function _unregister(appId,category,className,type) {
if (type) {
removeTrigger(className,type,appId);
delete _triggerStore[appId][category][className][type];
} else {
delete _triggerStore[a][b][c];
delete _triggerStore[appId][category][className];
}
}
export function _unregisterAll() {
Object.keys(_triggerStore).forEach(appId => delete _triggerStore[appId]);
}
export function getTrigger(className, triggerType, applicationId) {
if (!applicationId) {
throw "Missing ApplicationID";