deno.land / std@0.166.0 / node / _tools / test / parallel / test-stream-once-readable-pipe.js
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869// deno-fmt-ignore-file// deno-lint-ignore-file
// Copyright Joyent and Node contributors. All rights reserved. MIT license.// Taken from Node 18.12.0// This file is automatically generated by "node/_tools/setup.ts". Do not modify this file manually
'use strict';
const common = require('../common');const assert = require('assert');const { Readable, Writable } = require('stream');
// This test ensures that if have 'readable' listener// on Readable instance it will not disrupt the pipe.
{ let receivedData = ''; const w = new Writable({ write: (chunk, env, callback) => { receivedData += chunk; callback(); }, });
const data = ['foo', 'bar', 'baz']; const r = new Readable({ read: () => {}, });
r.once('readable', common.mustCall());
r.pipe(w); r.push(data[0]); r.push(data[1]); r.push(data[2]); r.push(null);
w.on('finish', common.mustCall(() => { assert.strictEqual(receivedData, data.join('')); }));}
{ let receivedData = ''; const w = new Writable({ write: (chunk, env, callback) => { receivedData += chunk; callback(); }, });
const data = ['foo', 'bar', 'baz']; const r = new Readable({ read: () => {}, });
r.pipe(w); r.push(data[0]); r.push(data[1]); r.push(data[2]); r.push(null); r.once('readable', common.mustCall());
w.on('finish', common.mustCall(() => { assert.strictEqual(receivedData, data.join('')); }));}
Version Info