mirror of
https://github.com/node-red/node-red.git
synced 2025-03-01 10:36:34 +00:00
Renable unit tests following logging api changes
This commit is contained in:
@@ -122,29 +122,34 @@ describe('html node', function() {
|
||||
});
|
||||
});
|
||||
});
|
||||
// HELEN - commenting out for now
|
||||
// it('should log on error', function(done) {
|
||||
// fs.readFile(file,function(err, data) {
|
||||
// var flow = [{id:"n1",type:"html",wires:[["n2"]],tag:"p"},
|
||||
// {id:"n2", type:"helper"}];
|
||||
//
|
||||
// helper.load(htmlNode, flow, function() {
|
||||
// var n1 = helper.getNode("n1");
|
||||
// var n2 = helper.getNode("n2");
|
||||
// n1.on("log", function(msg) {
|
||||
// if (msg.level && (msg.level === 'metric')) {
|
||||
// // do nothing as we've just hit a metric related msg
|
||||
// } else {
|
||||
// msg.should.have.property('msg');
|
||||
// msg.msg.indexOf("Error:").should.be.above(-1);
|
||||
// msg.msg.should.startWith("Error:");
|
||||
// done();
|
||||
// }
|
||||
// });
|
||||
// n1.receive({payload:null,topic: "bar"});
|
||||
// });
|
||||
// });
|
||||
// });
|
||||
|
||||
it('should log on error', function(done) {
|
||||
fs.readFile(file,function(err, data) {
|
||||
var flow = [{id:"n1",type:"html",wires:[["n2"]],tag:"p"},
|
||||
{id:"n2", type:"helper"}];
|
||||
|
||||
helper.load(htmlNode, flow, function() {
|
||||
var n1 = helper.getNode("n1");
|
||||
var n2 = helper.getNode("n2");
|
||||
try {
|
||||
helper.log().called.should.be.false;
|
||||
n1.receive({payload:null,topic: "bar"});
|
||||
helper.log().called.should.be.true;
|
||||
var logEvents = helper.log().args.filter(function(evt) {
|
||||
return evt[0].level == "log";
|
||||
});
|
||||
logEvents.should.have.length(1);
|
||||
// Each logEvent is the array of args passed to the function.
|
||||
logEvents[0][0].should.have.a.property('msg');
|
||||
logEvents[0][0].msg.should.startWith("Error:");
|
||||
|
||||
done();
|
||||
} catch(err) {
|
||||
done(err);
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
describe('multiple messages', function(){
|
||||
var cnt = 0;
|
||||
|
@@ -70,43 +70,49 @@ describe('JSON node', function() {
|
||||
jn1.receive({payload:obj,topic: "bar"});
|
||||
});
|
||||
});
|
||||
// HELEN - commenting out for now
|
||||
// it('should log an error if asked to parse an invalid json string', function(done) {
|
||||
// var flow = [{id:"jn1",type:"json",wires:[["jn2"]],func:"return msg;"},
|
||||
// {id:"jn2", type:"helper"}];
|
||||
// helper.load(jsonNode, flow, function() {
|
||||
// var jn1 = helper.getNode("jn1");
|
||||
// var jn2 = helper.getNode("jn2");
|
||||
// jn1.on("log", function(msg) {
|
||||
// if (msg.level && (msg.level === 'metric')) {
|
||||
// // do nothing as we've just hit a metric related msg
|
||||
// } else {
|
||||
// msg.should.have.property('msg');
|
||||
// should.deepEqual("SyntaxError: Unexpected token o"+ "\nfoo", msg.msg);
|
||||
// done();
|
||||
// }
|
||||
// });
|
||||
// jn1.receive({payload:'foo',topic: "bar"});
|
||||
// });
|
||||
// });
|
||||
// HELEN - commenting out for now
|
||||
// it('should log an error if asked to parse something thats not json or js', function(done) {
|
||||
// var flow = [{id:"jn1",type:"json",wires:[["jn2"]],func:"return msg;"},
|
||||
// {id:"jn2", type:"helper"}];
|
||||
// helper.load(jsonNode, flow, function() {
|
||||
// var jn1 = helper.getNode("jn1");
|
||||
// var jn2 = helper.getNode("jn2");
|
||||
// jn1.on("log", function(msg) {
|
||||
// if (msg.level && (msg.level === 'metric')) {
|
||||
// // do nothing as we've just hit a metric related msg
|
||||
// } else {
|
||||
// msg.should.have.property('msg');
|
||||
// should.deepEqual("dropped: 1", msg.msg);
|
||||
// done();
|
||||
// }
|
||||
// });
|
||||
// jn1.receive({payload:1,topic: "bar"});
|
||||
// });
|
||||
// });
|
||||
|
||||
it('should log an error if asked to parse an invalid json string', function(done) {
|
||||
var flow = [{id:"jn1",type:"json",wires:[["jn2"]],func:"return msg;"},
|
||||
{id:"jn2", type:"helper"}];
|
||||
helper.load(jsonNode, flow, function() {
|
||||
try {
|
||||
helper.log().called.should.be.false;
|
||||
var jn1 = helper.getNode("jn1");
|
||||
var jn2 = helper.getNode("jn2");
|
||||
jn1.receive({payload:'foo',topic: "bar"});
|
||||
helper.log().called.should.be.true;
|
||||
var logEvents = helper.log().args.filter(function(evt) {
|
||||
return evt[0].level == "log";
|
||||
});
|
||||
logEvents.should.have.length(1);
|
||||
logEvents[0][0].should.have.a.property('msg',"SyntaxError: Unexpected token o"+ "\nfoo");
|
||||
done();
|
||||
} catch(err) {
|
||||
done(err);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
it('should log an error if asked to parse something thats not json or js', function(done) {
|
||||
var flow = [{id:"jn1",type:"json",wires:[["jn2"]],func:"return msg;"},
|
||||
{id:"jn2", type:"helper"}];
|
||||
helper.load(jsonNode, flow, function() {
|
||||
try {
|
||||
helper.log().called.should.be.false;
|
||||
var jn1 = helper.getNode("jn1");
|
||||
var jn2 = helper.getNode("jn2");
|
||||
jn1.receive({payload:1,topic: "bar"});
|
||||
helper.log().called.should.be.true;
|
||||
var logEvents = helper.log().args.filter(function(evt) {
|
||||
return evt[0].level == "log";
|
||||
});
|
||||
logEvents.should.have.length(1);
|
||||
logEvents[0][0].should.have.a.property('msg',"dropped: 1");
|
||||
done();
|
||||
} catch(err) {
|
||||
done(err);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
});
|
||||
|
@@ -74,41 +74,53 @@ describe('XML node', function() {
|
||||
n1.receive({payload:obj,topic: "bar"});
|
||||
});
|
||||
});
|
||||
// HELEN - commenting out for now
|
||||
// it('should log an error if asked to parse an invalid xml string', function(done) {
|
||||
// var flow = [{id:"n1",type:"xml",wires:[["n2"]],func:"return msg;"},
|
||||
// {id:"n2", type:"helper"}];
|
||||
// helper.load(xmlNode, flow, function() {
|
||||
// var n1 = helper.getNode("n1");
|
||||
// var n2 = helper.getNode("n2");
|
||||
// n1.on("log", function(msg) {
|
||||
// if (msg.level && (msg.level === 'metric')) {
|
||||
// // do nothing as we've just hit a metric related msg
|
||||
// } else {
|
||||
// should.deepEqual("error", msg.level);
|
||||
// done();
|
||||
// }
|
||||
// });
|
||||
// n1.receive({payload:'<not valid xml>',topic: "bar"});
|
||||
// });
|
||||
// });
|
||||
// HELEN - commenting out for now
|
||||
// it('should log an error if asked to parse something thats not xml or js', function(done) {
|
||||
// var flow = [{id:"n1",type:"xml",wires:[["n2"]],func:"return msg;"},
|
||||
// {id:"n2", type:"helper"}];
|
||||
// helper.load(xmlNode, flow, function() {
|
||||
// var n1 = helper.getNode("n1");
|
||||
// var n2 = helper.getNode("n2");
|
||||
// n1.on("log", function(msg) {
|
||||
// if (msg.level && (msg.level === 'metric')) {
|
||||
// // do nothing as we've just hit a metric related msg
|
||||
// } else {msg.should.have.property('msg');
|
||||
// should.deepEqual("This node only handles xml strings or js objects.", msg.msg);
|
||||
// done();
|
||||
// }
|
||||
// });
|
||||
// n1.receive({payload:1,topic: "bar"});
|
||||
// });
|
||||
// });
|
||||
|
||||
it('should log an error if asked to parse an invalid xml string', function(done) {
|
||||
var flow = [{id:"n1",type:"xml",wires:[["n2"]],func:"return msg;"},
|
||||
{id:"n2", type:"helper"}];
|
||||
helper.load(xmlNode, flow, function() {
|
||||
var n1 = helper.getNode("n1");
|
||||
var n2 = helper.getNode("n2");
|
||||
n1.receive({payload:'<not valid xml>',topic: "bar"});
|
||||
setTimeout(function() {
|
||||
try {
|
||||
helper.log().called.should.be.true;
|
||||
var logEvents = helper.log().args.filter(function(evt) {
|
||||
return evt[0].level == "error";
|
||||
});
|
||||
logEvents.should.have.length(1);
|
||||
logEvents[0][0].should.have.a.property('msg');
|
||||
logEvents[0][0].msg.toString().should.startWith("Error: Attribute without value");
|
||||
|
||||
done();
|
||||
} catch(err) {
|
||||
done(err);
|
||||
}
|
||||
},200);
|
||||
});
|
||||
});
|
||||
|
||||
it('should log an error if asked to parse something thats not xml or js', function(done) {
|
||||
var flow = [{id:"n1",type:"xml",wires:[["n2"]],func:"return msg;"},
|
||||
{id:"n2", type:"helper"}];
|
||||
helper.load(xmlNode, flow, function() {
|
||||
var n1 = helper.getNode("n1");
|
||||
var n2 = helper.getNode("n2");
|
||||
n1.receive({payload:1,topic: "bar"});
|
||||
setTimeout(function() {
|
||||
try {
|
||||
helper.log().called.should.be.true;
|
||||
var logEvents = helper.log().args.filter(function(evt) {
|
||||
return evt[0].level == "log";
|
||||
});
|
||||
logEvents.should.have.length(1);
|
||||
logEvents[0][0].should.have.a.property('msg',"This node only handles xml strings or js objects.");
|
||||
done();
|
||||
} catch(err) {
|
||||
done(err);
|
||||
}
|
||||
},200);
|
||||
});
|
||||
});
|
||||
|
||||
});
|
||||
|
Reference in New Issue
Block a user