| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- var binary = require('../');
- var test = require('tap').test;
- var EventEmitter = require('events').EventEmitter;
- var seq = require('seq');
- test('skip', function (t) {
- t.plan(7);
- var em = new EventEmitter;
- var state = 0;
-
- binary(em)
- .word16lu('a')
- .tap(function () { state = 1 })
- .skip(7)
- .tap(function () { state = 2 })
- .word8('b')
- .tap(function () { state = 3 })
- .tap(function (vars) {
- t.same(state, 3);
- t.same(vars, {
- a : 2569,
- b : 8,
- });
- })
- ;
-
- seq()
- .seq(setTimeout, seq, 20)
- .seq(function () {
- t.same(state, 0);
- em.emit('data', new Buffer([ 9 ]));
- this(null);
- })
- .seq(setTimeout, seq, 5)
- .seq(function () {
- t.same(state, 0);
- em.emit('data', new Buffer([ 10, 1, 2 ]));
- this(null);
- })
- .seq(setTimeout, seq, 30)
- .seq(function () {
- t.same(state, 1);
- em.emit('data', new Buffer([ 3, 4, 5 ]));
- this(null);
- })
- .seq(setTimeout, seq, 15)
- .seq(function () {
- t.same(state, 1);
- em.emit('data', new Buffer([ 6, 7 ]));
- this(null);
- })
- .seq(function () {
- t.same(state, 2);
- em.emit('data', new Buffer([ 8 ]));
- this(null);
- })
- ;
- });
|