0
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-10-30 09:08:00 -04:00
denoland-deno/cli/tests/node_compat/test/parallel/test-stream-readable-infinite-read.js

40 lines
962 B
JavaScript
Raw Normal View History

// deno-fmt-ignore-file
// deno-lint-ignore-file
// Copyright Joyent and Node contributors. All rights reserved. MIT license.
// Taken from Node 18.12.1
// This file is automatically generated by `tools/node_compat/setup.ts`. Do not modify this file manually.
'use strict';
const common = require('../common');
const assert = require('assert');
const { Readable } = require('stream');
const buf = Buffer.alloc(8192);
const readable = new Readable({
read: common.mustCall(function() {
this.push(buf);
}, 31)
});
let i = 0;
readable.on('readable', common.mustCall(function() {
if (i++ === 10) {
// We will just terminate now.
process.removeAllListeners('readable');
return;
}
const data = readable.read();
// TODO(mcollina): there is something odd in the highWaterMark logic
// investigate.
if (i === 1) {
assert.strictEqual(data.length, 8192 * 2);
} else {
assert.strictEqual(data.length, 8192 * 3);
}
}, 11));