// 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 "node/_tools/setup.ts". Do not modify this file manually 'use strict'; const common = require('../common'); const { Readable, PassThrough, pipeline } = require('stream'); const assert = require('assert'); const _err = new Error('kaboom'); async function run() { const source = new Readable({ read() { } }); source.push('hello'); source.push('world'); setImmediate(() => { source.destroy(_err); }); const iterator = pipeline( source, new PassThrough(), () => {}); iterator.setEncoding('utf8'); for await (const k of iterator) { assert.strictEqual(k, 'helloworld'); } } run().catch(common.mustCall((err) => assert.strictEqual(err, _err)));