• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1'use strict';
2const common = require('../common');
3const { Readable } = require('stream');
4
5// Make sure that readable completes
6// even when reading larger buffer.
7const bufferSize = 10 * 1024 * 1024;
8let n = 0;
9const r = new Readable({
10  read() {
11    // Try to fill readable buffer piece by piece.
12    r.push(Buffer.alloc(bufferSize / 10));
13
14    if (n++ > 10) {
15      r.push(null);
16    }
17  }
18});
19
20r.on('readable', () => {
21  while (true) {
22    const ret = r.read(bufferSize);
23    if (ret === null)
24      break;
25  }
26});
27r.on('end', common.mustCall());
28