From 0dacd78252cdbb7b289c559630f81197d3527cfb Mon Sep 17 00:00:00 2001 From: juggledad Date: Thu, 12 Nov 2020 08:08:02 -0500 Subject: [PATCH] added a bunch of tests --- test/function/random/random_spec.js | 311 ++++++++++++++++++++++++---- 1 file changed, 266 insertions(+), 45 deletions(-) diff --git a/test/function/random/random_spec.js b/test/function/random/random_spec.js index c52841a3..3f01a621 100644 --- a/test/function/random/random_spec.js +++ b/test/function/random/random_spec.js @@ -15,74 +15,295 @@ describe('random node', function() { helper.stopServer(done); }); }); + +// ============================================================ - it("should be loaded with correct defaults", function(done) { - var flow = [{"id":"n1", "type":"random", "name":"random1", "wires":[[]]}]; - helper.load(testNode, flow, function() { - var n1 = helper.getNode("n1"); - //console.log(n1); - n1.should.have.property("low", ""); - n1.should.have.property("high", ""); - n1.should.have.property("inte", false); - done(); - }); - }); - - it('should output an integer between -3 and 3', function(done) { - var flow = [{"id":"n1", "type":"random", low:-3, high:3, inte:true, wires:[["n2"]] }, + it ("Test i1 (integer) - DEFAULT no overrides defaults to 1 and 10", function(done) { + var flow = [{id:"n1", type:"random", low: "" , high:"" , inte:true, wires:[["n2"]] }, {id:"n2", type:"helper"} ]; - helper.load(testNode, flow, function() { + helper.load(testNode, flow, function() { var n1 = helper.getNode("n1"); var n2 = helper.getNode("n2"); - var c = 0; - n2.on("input", function(msg) { - if (c === 0) { - msg.should.have.a.property("payload"); - msg.payload.should.be.approximately(0,3); - msg.payload.toString().indexOf(".").should.equal(-1); - done(); + n2.on("input", function(msg) { + try { + //console.log(msg); + msg.should.have.a.property("payload"); + msg.payload.should.be.within(1,10); + msg.payload.toString().indexOf(".").should.equal(-1); // see if it's really an integer and not a float... + done(); } + catch(err) { done(err); } }); - n1.emit("input", {payload:"a"}); + n1.emit("input", {"test":"Test i1"}); }); }); - it('should output an float between 20 and 30', function(done) { - var flow = [{"id":"n1", "type":"random", low:20, high:30, inte:false, wires:[["n2"]] }, + it ("Test f1 (float) - DEFAULT no overrides defaults to 1 and 10", function(done) { + var flow = [{id:"n1", type:"random", low:"" , high:"" , inte:false, wires:[["n2"]] }, {id:"n2", type:"helper"} ]; - helper.load(testNode, flow, function() { + helper.load(testNode, flow, function() { var n1 = helper.getNode("n1"); var n2 = helper.getNode("n2"); - var c = 0; - n2.on("input", function(msg) { - if (c === 0) { - msg.should.have.a.property("payload"); - msg.payload.should.be.approximately(25,5); - msg.payload.toString().indexOf(".").should.not.equal(-1); - done(); + n2.on("input", function(msg) { + try { + //console.log(msg); + msg.should.have.a.property("payload"); + msg.payload.should.be.within(1.0,9.999); + //msg.payload.toString().indexOf(".").should.not.equal(-1); + done(); } + catch(err) { done(err); } }); - n1.emit("input", {payload:"a"}); + n1.emit("input", {"test":"Test f-1"}); }); }); - it('should output an integer between -3 and 3 on chosen property - foo', function(done) { - var flow = [{"id":"n1", "type":"random", property:"foo", low:-3, high:3, inte:true, wires:[["n2"]] }, +// ============================================================ + + it ("Test i2 (integer) - FLIP node From = 3 To = -3", function(done) { + var flow = [{id:"n1", type:"random", low: 3, high: -3, inte:true, wires:[["n2"]] }, {id:"n2", type:"helper"} ]; - helper.load(testNode, flow, function() { + helper.load(testNode, flow, function() { var n1 = helper.getNode("n1"); var n2 = helper.getNode("n2"); - var c = 0; - n2.on("input", function(msg) { - if (c === 0) { - msg.should.have.a.property("foo"); - msg.foo.should.be.approximately(0,3); - msg.foo.toString().indexOf(".").should.equal(-1); - done(); + n2.on("input", function(msg) { + try { + //console.log(msg); + msg.should.have.a.property("payload"); + msg.payload.should.be.within(-3,3); + msg.payload.toString().indexOf(".").should.equal(-1); // slightly dumb test to see if it really is an integer and not a float... + done(); } + catch(err) { done(err); } }); - n1.emit("input", {payload:"a"}); + n1.emit("input", {"test":"Test i2"}); }); }); + it ("Test f2 (float) - FLIP node From = 3 To = -3", function(done) { + var flow = [{id:"n1", type:"random", low: 3, high: -3, inte:false, wires:[["n2"]] }, + {id:"n2", type:"helper"} ]; + helper.load(testNode, flow, function() { + var n1 = helper.getNode("n1"); + var n2 = helper.getNode("n2"); + n2.on("input", function(msg) { + try { + //console.log(msg); + msg.should.have.a.property("payload"); + msg.payload.should.be.within(-3.0,3.0); + done(); + } + catch(err) { done(err); } + }); + n1.emit("input", {"test":"Test f2"}); + }); + }); + +// ============================================================ + + it ("Test i3 (integer) - values in msg From = 2 To = '5', node no entries", function(done) { + var flow = [{id:"n1", type:"random", low: "", high: "", inte:true, wires:[["n2"]] }, + {id:"n2", type:"helper"} ]; + helper.load(testNode, flow, function() { + var n1 = helper.getNode("n1"); + var n2 = helper.getNode("n2"); + n2.on("input", function(msg) { + try { + //console.log(msg); + msg.should.have.a.property("payload"); + msg.payload.should.be.within(2,5); + msg.payload.toString().indexOf(".").should.equal(-1); // slightly dumb test to see if it really is an integer and not a float... + done(); + } + catch(err) { done(err); } + }); + n1.emit("input", {"test":"Test i3", "from":2, "to":'5'}); + }); + }); + + it ("Test f3 (float) - values in msg From = 2 To = '5', node no entries", function(done) { + var flow = [{id:"n1", type:"random", low: "", high: "", inte:false, wires:[["n2"]] }, + {id:"n2", type:"helper"} ]; + helper.load(testNode, flow, function() { + var n1 = helper.getNode("n1"); + var n2 = helper.getNode("n2"); + n2.on("input", function(msg) { + try { + //console.log(msg); + msg.should.have.a.property("payload"); + msg.payload.should.be.within(2.0,5.0); + done(); + } + catch(err) { done(err); } + }); + n1.emit("input", {"test":"Test f3", "from":2, "to":'5'}); + }); + }); + +// ============================================================ + + it ("Test i4 (integer) - node From = 2 To = '-2', values will flip", function(done) { + var flow = [{id:"n1", type:"random", low: 2, high: "-2", inte:true, wires:[["n2"]] }, + {id:"n2", type:"helper"} ]; + helper.load(testNode, flow, function() { + var n1 = helper.getNode("n1"); + var n2 = helper.getNode("n2"); + n2.on("input", function(msg) { + try { + //console.log(msg); + msg.should.have.a.property("payload"); + msg.payload.should.be.within(-2,2); + msg.payload.toString().indexOf(".").should.equal(-1); + done(); + } + catch(err) { done(err); } + }); + n1.emit("input", {"test":"Test i4"}); + }); + }); + + it ("Test f4 (float) - node From = 2 To = '-2', values will flip", function(done) { + var flow = [{id:"n1", type:"random", low: 2, high: "-2", inte:false, wires:[["n2"]] }, + {id:"n2", type:"helper"} ]; + helper.load(testNode, flow, function() { + var n1 = helper.getNode("n1"); + var n2 = helper.getNode("n2"); + n2.on("input", function(msg) { + try { + //console.log(msg); + msg.should.have.a.property("payload"); + msg.payload.should.be.within(-2.0,2.0); + done(); + } + catch(err) { done(err); } + }); + n1.emit("input", {"test":"Test 44"}); + }); + }); + + // ============================================================ + + it ("Test i5 (integer) - value in msg From = 2, node From = 5 To = '' - node overides From = 5 To defaults to 10", function(done) { + var flow = [{id:"n1", type:"random", low: 5, high:"", inte:true, wires:[["n2"]] }, + {id:"n2", type:"helper"} ]; + helper.load(testNode, flow, function() { + var n1 = helper.getNode("n1"); + var n2 = helper.getNode("n2"); + n2.on("input", function(msg) { + try { + //console.log(msg); + msg.should.have.a.property("payload"); + msg.payload.should.be.within(5,10); + msg.payload.toString().indexOf(".").should.equal(-1); + done(); + } + catch(err) { done(err); } + }); + n1.emit("input", {"test":"Test i5", "from": 2}); + }); + }); + + it ("Test f5 (float) - value in msg From = 2, node From = 5 To = '' - node wins 'To' defaults to 10", function(done) { + var flow = [{id:"n1", type:"random", low: 5, high:"", inte:false, wires:[["n2"]] }, + {id:"n2", type:"helper"} ]; + helper.load(testNode, flow, function() { + var n1 = helper.getNode("n1"); + var n2 = helper.getNode("n2"); + n2.on("input", function(msg) { + try { + //console.log(msg); + msg.should.have.a.property("payload"); + msg.payload.should.be.within(5.0,10.0); + done(); + } + catch(err) { done(err); } + }); + n1.emit("input", {"test":"Test f5", "from": 2}); + }); + }); + +// ============================================================ + + it ("Test i6 (integer) - msg From = '6' To = '9' node no entries", function(done) { + var flow = [{id:"n1", type:"random", low: "", high: "", inte:true, wires:[["n2"]] }, + {id:"n2", type:"helper"} ]; + helper.load(testNode, flow, function() { + var n1 = helper.getNode("n1"); + var n2 = helper.getNode("n2"); + n2.on("input", function(msg) { + try { + //console.log(msg); + msg.should.have.a.property("payload"); + msg.payload.should.be.within(6,9); + msg.payload.toString().indexOf(".").should.equal(-1); // slightly dumb test to see if it really is an integer and not a float... + done(); + } + catch(err) { done(err); } + }); + n1.emit("input", {"test":"Test i6", "from": '6', "to": '9'}); + }); + }); + + it ("Test f6 (float) - msg From = '6' To = '9' node no entries", function(done) { + var flow = [{id:"n1", type:"random", low: "", high: "", inte:false, wires:[["n2"]] }, + {id:"n2", type:"helper"} ]; + helper.load(testNode, flow, function() { + var n1 = helper.getNode("n1"); + var n2 = helper.getNode("n2"); + n2.on("input", function(msg) { + try { + //console.log(msg); + msg.should.have.a.property("payload"); + msg.payload.should.be.within(6.0,9.0); + done(); + } + catch(err) { done(err); } + }); + n1.emit("input", {"test":"Test f6", "from": '6', "to": '9'}); + }); + }); + +// ============================================================ + + it ("Test i7 (integer) - msg From = 2.4 To = '7.3' node no entries", function(done) { + var flow = [{id:"n1", type:"random", low: "", high: "", inte:true, wires:[["n2"]] }, + {id:"n2", type:"helper"} ]; + helper.load(testNode, flow, function() { + var n1 = helper.getNode("n1"); + var n2 = helper.getNode("n2"); + n2.on("input", function(msg) { + try { + //console.log(msg); + msg.should.have.a.property("payload"); + msg.payload.should.be.within(2,7); + msg.payload.toString().indexOf(".").should.equal(-1); // slightly dumb test to see if it really is an integer and not a float... + done(); + } + catch(err) { done(err); } + }); + n1.emit("input", {"test":"Test i7", "from": 2.4, "to": '7.3'}); + }); + }); + + it ("Test f7 (float) - msg From = 2.4 To = '7.3' node no entries", function(done) { + var flow = [{id:"n1", type:"random", low: "", high: "", inte:false, wires:[["n2"]] }, + {id:"n2", type:"helper"} ]; + helper.load(testNode, flow, function() { + var n1 = helper.getNode("n1"); + var n2 = helper.getNode("n2"); + n2.on("input", function(msg) { + try { + //console.log(msg); + msg.should.have.a.property("payload"); + msg.payload.should.be.within(2.4,7.3); + done(); + } + catch(err) { done(err); } + }); + n1.emit("input", {"test":"Test f7", "from": 2.4, "to": '7.3'}); + }); + }); + +// ============================================================ + });