mirror of
https://github.com/S2-/gitlit
synced 2025-08-03 21:00:04 +02:00
packager
This commit is contained in:
54
app/node_modules/binary/test/loop_scan.js
generated
vendored
Normal file
54
app/node_modules/binary/test/loop_scan.js
generated
vendored
Normal file
@@ -0,0 +1,54 @@
|
||||
var binary = require('../');
|
||||
var test = require('tap').test;
|
||||
var EventEmitter = require('events').EventEmitter;
|
||||
|
||||
test('loop scan', function (t) {
|
||||
t.plan(8 + 6 + 2);
|
||||
|
||||
var em = new EventEmitter;
|
||||
|
||||
binary.stream(em)
|
||||
.loop(function (end) {
|
||||
var vars_ = this.vars;
|
||||
this
|
||||
.scan('filler', 'BEGINMSG')
|
||||
.buffer('cmd', 3)
|
||||
.word8('num')
|
||||
.tap(function (vars) {
|
||||
t.strictEqual(vars, vars_);
|
||||
if (vars.num != 0x02 && vars.num != 0x06) {
|
||||
t.same(vars.filler.length, 0);
|
||||
}
|
||||
if (vars.cmd.toString() == 'end') end();
|
||||
})
|
||||
;
|
||||
})
|
||||
.tap(function (vars) {
|
||||
t.same(vars.cmd.toString(), 'end');
|
||||
t.same(vars.num, 0x08);
|
||||
})
|
||||
;
|
||||
|
||||
setTimeout(function () {
|
||||
em.emit('data', new Buffer(
|
||||
'BEGINMSGcmd\x01'
|
||||
+ 'GARBAGEDATAXXXX'
|
||||
+ 'BEGINMSGcmd\x02'
|
||||
+ 'BEGINMSGcmd\x03'
|
||||
));
|
||||
}, 10);
|
||||
|
||||
setTimeout(function () {
|
||||
em.emit('data', new Buffer(
|
||||
'BEGINMSGcmd\x04'
|
||||
+ 'BEGINMSGcmd\x05'
|
||||
+ 'GARBAGEDATAXXXX'
|
||||
+ 'BEGINMSGcmd\x06'
|
||||
));
|
||||
em.emit('data', new Buffer('BEGINMSGcmd\x07'));
|
||||
}, 20);
|
||||
|
||||
setTimeout(function () {
|
||||
em.emit('data', new Buffer('BEGINMSGend\x08'));
|
||||
}, 30);
|
||||
});
|
Reference in New Issue
Block a user