'use strict';const common = require('../common');const assert = require('assert');
const { Readable } = require('stream');const EE = require('events').EventEmitter;
class LegacyStream extends EE { pause() {} resume() {}}
{ const err = new Error(); const oldStream = new LegacyStream(); const r = new Readable({ autoDestroy: true }) .wrap(oldStream) .on('error', common.mustCall(() => { assert.strictEqual(r._readableState.errorEmitted, true); assert.strictEqual(r._readableState.errored, err); assert.strictEqual(r.destroyed, true); })); oldStream.emit('error', err);}
{ const err = new Error(); const oldStream = new LegacyStream(); const r = new Readable({ autoDestroy: false }) .wrap(oldStream) .on('error', common.mustCall(() => { assert.strictEqual(r._readableState.errorEmitted, true); assert.strictEqual(r._readableState.errored, err); assert.strictEqual(r.destroyed, false); })); oldStream.emit('error', err);}