Skip to content

Commit fc4edde

Browse files
committed
Add runtime-api tests
1 parent 54cc04f commit fc4edde

7 files changed

Lines changed: 1650 additions & 249 deletions

File tree

red/red.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ module.exports = {
7171
if (userSettings.httpAdminRoot !== false) {
7272
runtime.init(userSettings,redUtil,api);
7373
runtimeAPI.init(runtime,redUtil);
74-
api.init(httpServer,userSettings,runtime.storage,runtimeAPI,redUtil);
74+
api.init(httpServer,userSettings,runtime.storage,runtimeAPI);
7575

7676
apiEnabled = true;
7777
server = runtime.adminApi.server;
@@ -106,7 +106,7 @@ module.exports = {
106106
})
107107
},
108108
nodes: runtime.nodes,
109-
get log() { return redUtil.log },
109+
log: redUtil.log,
110110
settings:runtime.settings,
111111
util: runtime.util,
112112
version: runtime.version,

red/runtime-api/flows.js

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,6 @@ var api = module.exports = {
4949
getFlows: function(opts) {
5050
return new Promise(function(resolve,reject) {
5151
runtime.log.audit({event: "flows.get"}/*,req*/);
52-
var version = opts.version||"v1";
5352
return resolve(runtime.nodes.getFlows());
5453
});
5554
},
@@ -61,7 +60,6 @@ var api = module.exports = {
6160
* @memberof RED.flows
6261
*/
6362
setFlows: function(opts) {
64-
var err;
6563
return new Promise(function(resolve,reject) {
6664

6765
var flows = opts.flows;
@@ -75,6 +73,7 @@ var api = module.exports = {
7573
if (flows.hasOwnProperty('rev')) {
7674
var currentVersion = runtime.nodes.getFlows().rev;
7775
if (currentVersion !== flows.rev) {
76+
var err;
7877
err = new Error();
7978
err.code = "version_mismatch";
8079
err.status = 409;
@@ -193,18 +192,22 @@ var api = module.exports = {
193192
var id = opts.id;
194193
try {
195194
runtime.nodes.removeFlow(id).then(function() {
196-
log.audit({event: "flow.remove",id:id});
195+
runtime.log.audit({event: "flow.remove",id:id});
197196
return resolve();
198-
})
197+
}).catch(function(err) {
198+
runtime.log.audit({event: "flow.remove",id:id,error:err.code||"unexpected_error",message:err.toString()});
199+
err.status = 400;
200+
return reject(err);
201+
});
199202
} catch(err) {
200203
if (err.code === 404) {
201-
log.audit({event: "flow.remove",id:id,error:"not_found"});
204+
runtime.log.audit({event: "flow.remove",id:id,error:"not_found"});
202205
// TODO: this swap around of .code and .status isn't ideal
203206
err.status = 404;
204207
err.code = "not_found";
205208
return reject(err);
206209
} else {
207-
log.audit({event: "flow.remove",id:id,error:err.code||"unexpected_error",message:err.toString()});
210+
runtime.log.audit({event: "flow.remove",id:id,error:err.code||"unexpected_error",message:err.toString()});
208211
err.status = 400;
209212
return reject(err);
210213
}
@@ -228,7 +231,7 @@ var api = module.exports = {
228231
if (!credentials) {
229232
return resolve({});
230233
}
231-
var definition = runtime.nodes.getCredentialDefinition(opts.type);
234+
var definition = runtime.nodes.getCredentialDefinition(opts.type) || {};
232235

233236
var sendCredentials = {};
234237
for (var cred in definition) {

red/runtime-api/projects.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ var api = module.exports = {
2727
available: function(opts) {
2828
return Promise.resolve(!!runtime.storage.projects);
2929
},
30+
3031
/**
3132
* List projects known to the runtime
3233
* @param {Object} opts
@@ -50,8 +51,6 @@ var api = module.exports = {
5051
})
5152
},
5253

53-
54-
5554
/**
5655
* Create a new project
5756
* @param {Object} opts

0 commit comments

Comments
 (0)