Spaces:
Sleeping
Sleeping
| const t = require('tap') | |
| if (process.env.CI) { | |
| t.skip('skip on CI') | |
| process.exit(0) | |
| } | |
| const { join } = require('path') | |
| const { file } = require('./helper') | |
| const { stat } = require('fs') | |
| const ThreadStream = require('..') | |
| t.setTimeout(30000) | |
| const dest = file() | |
| const stream = new ThreadStream({ | |
| filename: join(__dirname, 'to-file.js'), | |
| workerData: { dest }, | |
| sync: false | |
| }) | |
| let length = 0 | |
| stream.on('close', () => { | |
| stat(dest, (err, f) => { | |
| t.error(err) | |
| t.equal(f.size, length) | |
| t.end() | |
| }) | |
| }) | |
| const buf = Buffer.alloc(1024).fill('x').toString() // 1 KB | |
| // This writes 1 GB of data | |
| for (let i = 0; i < 1024 * 1024; i++) { | |
| length += buf.length | |
| stream.write(buf) | |
| } | |
| stream.end() | |