rafa
Version:
Rafa.js is a Javascript framework for building concurrent applications.
23 lines (19 loc) • 547 B
JavaScript
module.exports = (assert, Rafa) => {
suite("next", () => {
test("throws if callback defined", () => {
var l = Rafa.channel();
l.callback = Rafa.noop;
assert.throws(() => l.next(Rafa.noop));
});
test("calls callback immediately if queue is not empty", () => {
var l = Rafa.channel(1);
var value;
var callback = m => value = m.value;
l.write(1);
l.next(callback);
assert.equal(value, 1);
assert.equal(l.buffer.length, 0);
assert.isNull(l.callback);
});
});
};