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.
		
		
		
		
		
			
		
			
				
					
					
						
							39 lines
						
					
					
						
							695 B
						
					
					
				
			
		
		
	
	
							39 lines
						
					
					
						
							695 B
						
					
					
				| 'use strict'
 | |
| 
 | |
| const { test } = require('tap')
 | |
| const { join } = require('path')
 | |
| const ThreadStream = require('..')
 | |
| const { file } = require('./helper')
 | |
| 
 | |
| const MAX = 1000
 | |
| 
 | |
| let str = ''
 | |
| 
 | |
| for (let i = 0; i < 10; i++) {
 | |
|   str += 'hello'
 | |
| }
 | |
| 
 | |
| test('base', function (t) {
 | |
|   const dest = file()
 | |
|   const stream = new ThreadStream({
 | |
|     filename: join(__dirname, 'to-file.js'),
 | |
|     workerData: { dest }
 | |
|   })
 | |
|   let runs = 0
 | |
|   function benchThreadStream () {
 | |
|     if (++runs === 1000) {
 | |
|       stream.end()
 | |
|       return
 | |
|     }
 | |
| 
 | |
|     for (let i = 0; i < MAX; i++) {
 | |
|       stream.write(str)
 | |
|     }
 | |
|     setImmediate(benchThreadStream)
 | |
|   }
 | |
|   benchThreadStream()
 | |
|   stream.on('finish', function () {
 | |
|     t.end()
 | |
|   })
 | |
| })
 |