mirror of
				https://hub.gitmirror.com/https://github.com/gradle/actions.git
				synced 2025-11-01 02:20:00 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			44 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			44 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| var binary = require('../');
 | |
| var test = require('tap').test;
 | |
| var EventEmitter = require('events').EventEmitter;
 | |
| 
 | |
| test('into stream', function (t) {
 | |
|     t.plan(3);
 | |
|     
 | |
|     var digits = [ 1, 2, 3, 4, 5, 6 ];
 | |
|     var stream = new EventEmitter;
 | |
|     var iv = setInterval(function () {
 | |
|         var d = digits.shift();
 | |
|         if (d) stream.emit('data', new Buffer([ d ]))
 | |
|         else clearInterval(iv)
 | |
|     }, 20);
 | |
|     
 | |
|     binary.stream(stream)
 | |
|         .into('moo', function () {
 | |
|             this
 | |
|                 .word8('x')
 | |
|                 .word8('y')
 | |
|                 .word8('z')
 | |
|             ;
 | |
|         })
 | |
|         .tap(function (vars) {
 | |
|             t.same(vars, { moo : { x : 1, y : 2, z : 3 } });
 | |
|         })
 | |
|         .word8('w')
 | |
|         .tap(function (vars) {
 | |
|             t.same(vars, {
 | |
|                 moo : { x : 1, y : 2, z : 3 },
 | |
|                 w : 4,
 | |
|             });
 | |
|         })
 | |
|         .word8('x')
 | |
|         .tap(function (vars) {
 | |
|             t.same(vars, {
 | |
|                 moo : { x : 1, y : 2, z : 3 },
 | |
|                 w : 4,
 | |
|                 x : 5,
 | |
|             });
 | |
|         })
 | |
|     ;
 | |
| });
 | 
