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.
		
		
		
		
		
			
		
			
				
					35 lines
				
				846 B
			
		
		
			
		
	
	
					35 lines
				
				846 B
			| 
								 
											3 years ago
										 
									 | 
							
								var binary = require('../');
							 | 
						||
| 
								 | 
							
								var test = require('tap').test;
							 | 
						||
| 
								 | 
							
								var EventEmitter = require('events').EventEmitter;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								test('split', function (t) {
							 | 
						||
| 
								 | 
							
								    t.plan(1);
							 | 
						||
| 
								 | 
							
								    
							 | 
						||
| 
								 | 
							
								    var em = new EventEmitter;
							 | 
						||
| 
								 | 
							
								    binary.stream(em)
							 | 
						||
| 
								 | 
							
								        .word8('a')
							 | 
						||
| 
								 | 
							
								        .word16be('bc')
							 | 
						||
| 
								 | 
							
								        .word32ls('x')
							 | 
						||
| 
								 | 
							
								        .word32bs('y')
							 | 
						||
| 
								 | 
							
								        .tap(function (vars) {
							 | 
						||
| 
								 | 
							
								            t.same(vars, {
							 | 
						||
| 
								 | 
							
								                a : 97,
							 | 
						||
| 
								 | 
							
								                bc : 25187,
							 | 
						||
| 
								 | 
							
								                x : 621609828,
							 | 
						||
| 
								 | 
							
								                y : 621609828,
							 | 
						||
| 
								 | 
							
								            });
							 | 
						||
| 
								 | 
							
								        })
							 | 
						||
| 
								 | 
							
								    ;
							 | 
						||
| 
								 | 
							
								    
							 | 
						||
| 
								 | 
							
								    em.emit('data', new Buffer([ 97, 98 ]));
							 | 
						||
| 
								 | 
							
								    setTimeout(function () {
							 | 
						||
| 
								 | 
							
								        em.emit('data', new Buffer([ 99, 100 ]));
							 | 
						||
| 
								 | 
							
								    }, 25);
							 | 
						||
| 
								 | 
							
								    setTimeout(function () {
							 | 
						||
| 
								 | 
							
								        em.emit('data', new Buffer([ 3, 13, 37, 37 ]));
							 | 
						||
| 
								 | 
							
								    }, 30);
							 | 
						||
| 
								 | 
							
								    setTimeout(function () {
							 | 
						||
| 
								 | 
							
								        em.emit('data', new Buffer([ 13, 3, 100 ]));
							 | 
						||
| 
								 | 
							
								    }, 40);
							 | 
						||
| 
								 | 
							
								});
							 |