Sorry, the diff of this file is not supported yet
| var net = require('net'), | ||
| tap = require('tap'), | ||
| carrier = require('../lib/carrier.js'); | ||
| tap.test("non-default breaks", function(t) { | ||
| var server; | ||
| var port = 4001; | ||
| var to_be_sents = ["Hel", "lo\n", "Wor", "ld\n", "Glorious", " place"]; | ||
| var expecteds = to_be_sents.join('').split("l"); | ||
| t.plan(expecteds.length); | ||
| server = net.createServer(function(conn) { | ||
| var received_lines = -1; | ||
| carrier.carry(conn, function(line) { | ||
| received_lines ++; | ||
| t.equal(line, expecteds[received_lines]); | ||
| }, "ascii", "l"); | ||
| }); | ||
| server.listen(port); | ||
| var client = net.createConnection(port); | ||
| client.on('connect', function() { | ||
| var sent_lines = 0; | ||
| var next = function() { | ||
| if (sent_lines !== to_be_sents.length) { | ||
| client.write(to_be_sents[sent_lines], function() { | ||
| sent_lines ++; | ||
| next(); | ||
| }); | ||
| } | ||
| else { | ||
| client.end(); | ||
| } | ||
| }; | ||
| next(); | ||
| }); | ||
| t.on("end", function() { | ||
| server.close(); | ||
| }); | ||
| }); |
+9
-7
| var util = require('util'), | ||
| events = require('events'); | ||
| function Carrier(reader, listener, encoding) { | ||
| function Carrier(reader, listener, encoding, separator) { | ||
| var self = this; | ||
@@ -9,2 +9,6 @@ | ||
| if (!separator) { | ||
| separator = /\r?\n/; | ||
| } | ||
| if (listener) { | ||
@@ -16,9 +20,8 @@ self.addListener('line', listener); | ||
| reader.setEncoding(encoding || 'utf-8'); | ||
| reader.setEncoding(encoding || 'utf8'); | ||
| reader.on('data', function(data) { | ||
| var lines = (buffer + data).split("\n"); | ||
| var lines = (buffer + data).split(separator); | ||
| buffer = lines.pop(); | ||
| lines.forEach(function(line, index) { | ||
| line = line.replace("\r", ''); | ||
| self.emit('line', line); | ||
@@ -30,3 +33,2 @@ }); | ||
| if (buffer.length > 0) { | ||
| buffer = buffer.replace("\r", ''); | ||
| self.emit('line', buffer); | ||
@@ -43,5 +45,5 @@ buffer = ''; | ||
| exports.carry = function(reader, listener, encoding) { | ||
| return new Carrier(reader, listener, encoding); | ||
| exports.carry = function(reader, listener, encoding, separator) { | ||
| return new Carrier(reader, listener, encoding, separator); | ||
| } | ||
+5
-1
| { "name" : "carrier" | ||
| , "description" : "Evented stream line reader for node.js" | ||
| , "version" : "0.1.6" | ||
| , "version" : "0.1.7" | ||
| , "homepage" : "http://github.com/pgte/carrier" | ||
@@ -20,2 +20,6 @@ , "author" : | ||
| } | ||
| , { | ||
| "name": "Patrick Georgi" | ||
| , "url": "https://github.com/pgeorgi" | ||
| } | ||
| ] | ||
@@ -22,0 +26,0 @@ , "repository" : |
| /node_modules |
Sorry, the diff of this file is not supported yet
Network access
Supply chain riskThis module accesses the network.
Found 1 instance in 1 package
Network access
Supply chain riskThis module accesses the network.
Found 1 instance in 1 package
8282
20.98%10
11.11%186
25.68%44
29.41%5
25%