rafa
Version:
Rafa.js is a Javascript framework for building concurrent applications.
44 lines (39 loc) • 1.21 kB
JavaScript
module.exports = (assert, Rafa) => {
suite("write", () => {
test("write value message", () => {
var values = [];
var a = Rafa.stream();
a.each(value => values.push(value));
a.write(1);
assert.equal(values.length, 1);
assert.equal(values[0], 1);
});
test("write an error message", () => {
var values = [];
var a = Rafa.stream();
a.error(value => values.push(value));
a.write(new Error("foo"));
assert.equal(values.length, 1);
assert.equal(values[0].message, "foo");
});
test("write done value message", () => {
var values = [];
var a = Rafa.stream();
a.each(value => values.push(value));
a.done(value => values.push(value));
a.write(1, true);
assert.equal(values.length, 2);
assert.equal(values[0], 1);
assert.equal(values[1], 1);
});
test("write a done error message", () => {
var values = [];
var a = Rafa.stream();
a.error(value => values.push(value));
a.done(value => values.push(value));
a.write(new Error("foo"), true);
assert.equal(values.length, 2);
assert.equal(values[0].message, "foo");
});
});
};