mirror of
https://github.com/node-red/node-red.git
synced 2023-10-10 13:36:53 +02:00
tcp node - undo trim if we re-add split chars
and fix tests
This commit is contained in:
parent
bda5dffa34
commit
8a40622815
@ -137,7 +137,7 @@ module.exports = function(RED) {
|
|||||||
var parts = buffer.split(node.newline);
|
var parts = buffer.split(node.newline);
|
||||||
for (var i = 0; i<parts.length-1; i+=1) {
|
for (var i = 0; i<parts.length-1; i+=1) {
|
||||||
msg = {topic:node.topic, payload:parts[i]};
|
msg = {topic:node.topic, payload:parts[i]};
|
||||||
if (node.trim == true) { msg.payload += node.newline.trimEnd(); }
|
if (node.trim == true) { msg.payload += node.newline; }
|
||||||
msg._session = {type:"tcp",id:id};
|
msg._session = {type:"tcp",id:id};
|
||||||
node.send(msg);
|
node.send(msg);
|
||||||
}
|
}
|
||||||
@ -232,7 +232,7 @@ module.exports = function(RED) {
|
|||||||
var parts = buffer.split(node.newline);
|
var parts = buffer.split(node.newline);
|
||||||
for (var i = 0; i<parts.length-1; i+=1) {
|
for (var i = 0; i<parts.length-1; i+=1) {
|
||||||
msg = {topic:node.topic, payload:parts[i], ip:socket.remoteAddress, port:socket.remotePort};
|
msg = {topic:node.topic, payload:parts[i], ip:socket.remoteAddress, port:socket.remotePort};
|
||||||
if (node.trim == true) { msg.payload += node.newline.trimEnd(); }
|
if (node.trim == true) { msg.payload += node.newline; }
|
||||||
msg._session = {type:"tcp",id:id};
|
msg._session = {type:"tcp",id:id};
|
||||||
node.send(msg);
|
node.send(msg);
|
||||||
}
|
}
|
||||||
@ -658,7 +658,7 @@ module.exports = function(RED) {
|
|||||||
for (var p=0; p<parts.length-1; p+=1) {
|
for (var p=0; p<parts.length-1; p+=1) {
|
||||||
let m = RED.util.cloneMessage(msg);
|
let m = RED.util.cloneMessage(msg);
|
||||||
m.payload = parts[p];
|
m.payload = parts[p];
|
||||||
if (node.trim == true) { m.payload += node.newline.trimEnd(); }
|
if (node.trim == true) { m.payload += node.newline; }
|
||||||
nodeSend(m);
|
nodeSend(m);
|
||||||
}
|
}
|
||||||
chunk = parts[parts.length-1];
|
chunk = parts[parts.length-1];
|
||||||
|
@ -584,7 +584,7 @@
|
|||||||
"chars": "chars",
|
"chars": "chars",
|
||||||
"close": "Close",
|
"close": "Close",
|
||||||
"optional": "(optional)",
|
"optional": "(optional)",
|
||||||
"reattach": "re-attach delimiter and trim"
|
"reattach": "re-attach delimiter"
|
||||||
},
|
},
|
||||||
"type": {
|
"type": {
|
||||||
"listen": "Listen on",
|
"listen": "Listen on",
|
||||||
|
@ -130,7 +130,7 @@ describe('TCP in Node', function() {
|
|||||||
it('should recv data (Stream/String/Delimiter:o\\n) and reattach o', function(done) {
|
it('should recv data (Stream/String/Delimiter:o\\n) and reattach o', function(done) {
|
||||||
var flow = [{id:"n1", type:"tcp in", server:"server", host:"localhost", port:port, datamode:"stream", datatype:"utf8", newline:"o\n", trim:true, topic:"", base64:false, wires:[["n2"]] },
|
var flow = [{id:"n1", type:"tcp in", server:"server", host:"localhost", port:port, datamode:"stream", datatype:"utf8", newline:"o\n", trim:true, topic:"", base64:false, wires:[["n2"]] },
|
||||||
{id:"n2", type:"helper"}];
|
{id:"n2", type:"helper"}];
|
||||||
testTCP0(flow, ["foo\nbar"], ["foo", "bar"], done);
|
testTCP0(flow, ["foo\nbar"], ["foo\n", "bar"], done);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
@ -293,7 +293,7 @@ describe('TCP Request Node', function() {
|
|||||||
payload: "bar<A>\nfoo",
|
payload: "bar<A>\nfoo",
|
||||||
topic: 'boo'
|
topic: 'boo'
|
||||||
}], {
|
}], {
|
||||||
payload: "ACK:foobar<A>",
|
payload: "ACK:foobar<A>\n",
|
||||||
topic: 'boo'
|
topic: 'boo'
|
||||||
}, done);
|
}, done);
|
||||||
});
|
});
|
||||||
|
@ -45,7 +45,7 @@ describe('JSON node', function() {
|
|||||||
msg.payload.employees[0].should.have.property('lastName', 'Smith');
|
msg.payload.employees[0].should.have.property('lastName', 'Smith');
|
||||||
done();
|
done();
|
||||||
});
|
});
|
||||||
var jsonString = '{"employees":[{"firstName":"John", "lastName":"Smith"}]}';
|
var jsonString = ' {"employees":[{"firstName":"John", "lastName":"Smith"}]}\r\n ';
|
||||||
jn1.receive({payload:jsonString,topic: "bar"});
|
jn1.receive({payload:jsonString,topic: "bar"});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
@ -63,7 +63,7 @@ describe('JSON node', function() {
|
|||||||
msg.payload.employees[0].should.have.property('lastName', 'Smith');
|
msg.payload.employees[0].should.have.property('lastName', 'Smith');
|
||||||
done();
|
done();
|
||||||
});
|
});
|
||||||
var jsonString = Buffer.from('{"employees":[{"firstName":"John", "lastName":"Smith"}]}');
|
var jsonString = Buffer.from(' {"employees":[{"firstName":"John", "lastName":"Smith"}]}\r\n ');
|
||||||
jn1.receive({payload:jsonString,topic: "bar"});
|
jn1.receive({payload:jsonString,topic: "bar"});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
@ -56,7 +56,7 @@ describe('XML node', function() {
|
|||||||
should.equal(msg.payload.employees.lastName[0], 'Smith');
|
should.equal(msg.payload.employees.lastName[0], 'Smith');
|
||||||
done();
|
done();
|
||||||
});
|
});
|
||||||
var string = '<employees><firstName>John</firstName><lastName>Smith</lastName></employees>';
|
var string = ' <employees><firstName>John</firstName><lastName>Smith</lastName></employees>\r\n ';
|
||||||
n1.receive({payload:string,topic: "bar"});
|
n1.receive({payload:string,topic: "bar"});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
@ -76,7 +76,7 @@ describe('XML node', function() {
|
|||||||
should.equal(msg.foo.employees.lastName[0], 'Smith');
|
should.equal(msg.foo.employees.lastName[0], 'Smith');
|
||||||
done();
|
done();
|
||||||
});
|
});
|
||||||
var string = '<employees><firstName>John</firstName><lastName>Smith</lastName></employees>';
|
var string = ' <employees><firstName>John</firstName><lastName>Smith</lastName></employees>\r\n ';
|
||||||
n1.receive({foo:string,topic: "bar"});
|
n1.receive({foo:string,topic: "bar"});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
@ -96,7 +96,7 @@ describe('XML node', function() {
|
|||||||
should.equal(msg.payload.employees.lastName[0], 'Smith');
|
should.equal(msg.payload.employees.lastName[0], 'Smith');
|
||||||
done();
|
done();
|
||||||
});
|
});
|
||||||
var string = '<employees><firstName>John</firstName><lastName>Smith</lastName></employees>';
|
var string = ' <employees><firstName>John</firstName><lastName>Smith</lastName></employees>\r\n ';
|
||||||
n1.receive({payload:string, topic:"bar", options:{trim:true}});
|
n1.receive({payload:string, topic:"bar", options:{trim:true}});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
Loading…
Reference in New Issue
Block a user