From c98b9dfaa3a75fdc2e3dff98202017fb4464b72e Mon Sep 17 00:00:00 2001 From: Nick O'Leary Date: Sat, 20 Sep 2014 22:42:48 +0100 Subject: [PATCH] Don't filter errored nodes in result list --- red/nodes/registry.js | 6 +++++- test/red/nodes/registry_spec.js | 11 +++++++---- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/red/nodes/registry.js b/red/nodes/registry.js index 02767d03a..19b174c29 100644 --- a/red/nodes/registry.js +++ b/red/nodes/registry.js @@ -589,7 +589,11 @@ function loadNodeModule(node) { function loadNodeList(nodes) { var promises = []; nodes.forEach(function(node) { - promises.push(loadNodeModule(node)); + if (!node.err) { + promises.push(loadNodeModule(node)); + } else { + promises.push(node); + } }); return when.settle(promises).then(function(results) { diff --git a/test/red/nodes/registry_spec.js b/test/red/nodes/registry_spec.js index 0d7429679..098f6d81c 100644 --- a/test/red/nodes/registry_spec.js +++ b/test/red/nodes/registry_spec.js @@ -361,11 +361,14 @@ describe('NodeRegistry', function() { typeRegistry.load("wontexist",true).then(function(){ var list = typeRegistry.getNodeList(); list.should.be.an.Array.and.be.empty; - typeRegistry.addNode(resourcesDir + "DoesNotExist/DoesNotExist.js").then(function(node) { - done(new Error("ENOENT not thrown")); - }).otherwise(function(e) { - e.code.should.eql("ENOENT"); + typeRegistry.addNode(resourcesDir + "DoesNotExist/DoesNotExist.js").then(function(nodes) { + nodes.should.be.an.Array.and.have.lengthOf(1); + nodes[0].should.have.property("id"); + nodes[0].should.have.property("types",[]); + nodes[0].should.have.property("err"); done(); + }).otherwise(function(e) { + done(e); }); }).catch(function(e) {