You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							36 lines
						
					
					
						
							886 B
						
					
					
				
			
		
		
	
	
							36 lines
						
					
					
						
							886 B
						
					
					
				var binary = require('../');
 | 
						|
var test = require('tap').test;
 | 
						|
var EventEmitter = require('events').EventEmitter;
 | 
						|
 | 
						|
test('nested', function (t) {
 | 
						|
    t.plan(3);
 | 
						|
    var insideDone = false;
 | 
						|
    
 | 
						|
    var em = new EventEmitter;
 | 
						|
    binary.stream(em)
 | 
						|
        .word16be('ab')
 | 
						|
        .tap(function () {
 | 
						|
            this
 | 
						|
                .word8('c')
 | 
						|
                .word8('d')
 | 
						|
                .tap(function () {
 | 
						|
                    insideDone = true;
 | 
						|
                })
 | 
						|
            ;
 | 
						|
        })
 | 
						|
        .tap(function (vars) {
 | 
						|
            t.ok(insideDone);
 | 
						|
            t.same(vars.c, 'c'.charCodeAt(0));
 | 
						|
            t.same(vars.d, 'd'.charCodeAt(0));
 | 
						|
            
 | 
						|
        })
 | 
						|
    ;
 | 
						|
    
 | 
						|
    var strs = [ 'abc', 'def', 'hi', 'jkl' ];
 | 
						|
    var iv = setInterval(function () {
 | 
						|
        var s = strs.shift();
 | 
						|
        if (s) em.emit('data', new Buffer(s));
 | 
						|
        else clearInterval(iv);
 | 
						|
    }, 50);
 | 
						|
});
 |