diff --git a/red/nodes/registry.js b/red/nodes/registry.js index 40ec01e4a..ed0479310 100644 --- a/red/nodes/registry.js +++ b/red/nodes/registry.js @@ -197,7 +197,7 @@ function loadTemplate(nodeInfo) { var content = fs.readFileSync(templateFilename,'utf8'); - $ = cheerio.load(content); + var $ = cheerio.load(content); var template = ""; var script = ""; $("*").each(function(i,el) { diff --git a/test/red/nodes/registry_spec.js b/test/red/nodes/registry_spec.js index 4c7dc2c20..bbc398a94 100644 --- a/test/red/nodes/registry_spec.js +++ b/test/red/nodes/registry_spec.js @@ -84,6 +84,7 @@ describe("getNodeFiles", function() { var tempDir = path.join(__dirname,".tmp/"); var fakeNodeJS = tempDir + "testNode.js"; // when exported, this fake node creates a file we can assert on + var fakeNodeHTML = tempDir + "testNode.html"; // we assume it's going to be loaded by cheerio var nodeInjectedFileName = "testInjected"; var nodeInjectedFilePath = path.join(tempDir, nodeInjectedFileName); @@ -100,7 +101,26 @@ describe("getNodeFiles", function() { "module.exports = function(RED) {\n" + " fs.writeFileSync(tempFile, \"Test passes if this file has been written.\");\n" + "}\n"; + + var htmlContents = "\n" + + "\n" + + ""; fs.writeFileSync(fakeNodeJS, fileContents); + fs.writeFileSync(fakeNodeHTML, htmlContents); fs.remove(tempNoNodesContainedDir,function(err) { fs.mkdirSync(tempNoNodesContainedDir); done(); @@ -122,8 +142,14 @@ describe("getNodeFiles", function() { if(exists) { fs.unlinkSync(fakeNodeJS); } - fs.remove(tempDir, done); + fs.remove(tempDir); }); + fs.exists(fakeNodeHTML, function(exists) { + if(exists) { + fs.unlinkSync(fakeNodeHTML); + } + fs.remove(tempDir, done); + }); }); it('loads additional node files from specified external nodesDir',function(done) { @@ -135,6 +161,21 @@ describe("getNodeFiles", function() { typeRegistry.init(settings); typeRegistry.load(tempNoNodesContainedDir).then(function(){ + var testConfig = typeRegistry.getNodeConfigs(); + + try { + testConfig.should.equal( ""); + } catch(err) { + done(err); + } + fs.exists(nodeInjectedFilePath, function(exists) { if(exists) { done();