Comparing version 0.1.1 to 0.2.0
#!/usr/bin/env node | ||
var Burro = require("./lib/burro"); | ||
var burro = require("./lib/burro"); | ||
// -------------------------------------------------------------- | ||
// send somes stuff | ||
var client = new Burro(); | ||
var upstream = client.send(); | ||
// send some stuff | ||
var client = new burro.Sender(); | ||
upstream.on("packet", function(packet) { | ||
client.on("packet", function(packet) { | ||
console.log("sending:", packet); | ||
}); | ||
upstream | ||
client | ||
.pack({message: "どもうありがとう!", from: "japan", to: "usa"}) | ||
@@ -21,5 +20,5 @@ .pack({message: "thank you!", from: "usa", to: "japan"}); | ||
// receive some stuff | ||
var server = new Burro(); | ||
var downstream = server.receive(upstream); | ||
downstream.on("packet", function(packet) { | ||
var server = new burro.Receiver(); | ||
server.on("packet", function(packet) { | ||
console.log("received:", packet); | ||
@@ -30,5 +29,10 @@ }); | ||
// -------------------------------------------------------------- | ||
// cross the streams! | ||
client.pipe(server); | ||
// -------------------------------------------------------------- | ||
// send some more; pipe remains open | ||
setTimeout(function() { | ||
upstream.pack("^.^"); | ||
client.pack("^.^"); | ||
}, 1000); |
@@ -1,16 +0,4 @@ | ||
var Upstream = require("./upstream"), | ||
Downstream = require("./downstream"); | ||
var Burro = module.exports = function Burro() { | ||
this.packets = []; | ||
}; | ||
Burro.prototype.send = function send() { | ||
return new Upstream(); | ||
}; | ||
Burro.prototype.receive = function receive(upstream) { | ||
var downstream = new Downstream(); | ||
upstream.pipe(downstream); | ||
return downstream; | ||
}; | ||
module.exports = { | ||
Sender: require("./sender"), | ||
Receiver: require("./receiver") | ||
}; |
{ | ||
"name": "burro", | ||
"version": "0.1.1", | ||
"version": "0.2.0", | ||
"description": "auto-packaged, length-prefixed JSON byte streams", | ||
@@ -25,4 +25,5 @@ "main": "lib/burro", | ||
"devDependencies": { | ||
"mocha": "~1.8.1" | ||
"mocha": "~1.8.1", | ||
"benchmark": "~1.0.0" | ||
} | ||
} |
var assert = require("assert"), | ||
Burro = require("../lib/burro"); | ||
burro = require("../lib/burro"); | ||
describe("Burro", function(){ | ||
var bob, alice, upstream, downstream; | ||
var bob, alice; | ||
beforeEach(function() { | ||
// sender | ||
bob = new Burro(); | ||
upstream = bob.send(); | ||
// receiver | ||
alice = new Burro(); | ||
downstream = alice.receive(upstream); | ||
bob = new burro.Sender(); | ||
alice = new burro.Receiver(); | ||
bob.pipe(alice); | ||
}); | ||
it("should serialize a simple string", function(done){ | ||
downstream.on("packet", function(packet) { | ||
alice.on("packet", function(packet) { | ||
assert.equal("hello", packet); | ||
done(); | ||
}); | ||
upstream.pack("hello"); | ||
bob.pack("hello"); | ||
}); | ||
@@ -29,7 +24,7 @@ | ||
var obj = {a: "a", b: "b"}; | ||
downstream.on("packet", function(packet) { | ||
alice.on("packet", function(packet) { | ||
assert.deepEqual(obj, packet); | ||
done(); | ||
}); | ||
upstream.pack(obj); | ||
bob.pack(obj); | ||
}); | ||
@@ -45,7 +40,7 @@ | ||
}; | ||
downstream.on("packet", function(packet) { | ||
alice.on("packet", function(packet) { | ||
assert.deepEqual(obj, packet); | ||
done(); | ||
}); | ||
upstream.pack(obj); | ||
bob.pack(obj); | ||
}); | ||
@@ -59,3 +54,3 @@ | ||
]; | ||
downstream.on("packet", function(packet) { | ||
alice.on("packet", function(packet) { | ||
assert.deepEqual(queue.shift(), packet); | ||
@@ -67,3 +62,3 @@ if (queue.length === 0) { | ||
queue.forEach(function(obj) { | ||
upstream.pack(obj); | ||
bob.pack(obj); | ||
}); | ||
@@ -74,7 +69,7 @@ }); | ||
var message = "どうもありがとう"; | ||
downstream.on("packet", function(packet) { | ||
alice.on("packet", function(packet) { | ||
assert.equal(message, packet); | ||
done(); | ||
}); | ||
upstream.pack(message); | ||
bob.pack(message); | ||
}); | ||
@@ -84,3 +79,3 @@ | ||
var str; | ||
downstream.on("packet", function(packet) { | ||
alice.on("packet", function(packet) { | ||
assert.deepEqual(str, packet); | ||
@@ -94,3 +89,3 @@ done(); | ||
str = chunk.toString("base64"); | ||
upstream.pack(str); | ||
bob.pack(str); | ||
}); | ||
@@ -97,0 +92,0 @@ }); |
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
17786
12
464
2
1