diff --git a/test/parallel/test-stream-writable-destroy.js b/test/parallel/test-stream-writable-destroy.js index b7101f65427cf1..814d82b01a74fb 100644 --- a/test/parallel/test-stream-writable-destroy.js +++ b/test/parallel/test-stream-writable-destroy.js @@ -351,33 +351,35 @@ const assert = require('assert'); const write = new Writable({ write(chunk, enc, cb) { process.nextTick(cb); } }); + const _err = new Error('asd'); write.once('error', common.mustCall((err) => { assert.strictEqual(err.message, 'asd'); })); write.end('asd', common.mustCall((err) => { - assert.strictEqual(err.code, 'ERR_STREAM_DESTROYED'); + assert.strictEqual(err, _err); })); - write.destroy(new Error('asd')); + write.destroy(_err); } { // Call buffered write callback with error + const _err = new Error('asd'); const write = new Writable({ write(chunk, enc, cb) { - process.nextTick(cb, new Error('asd')); + process.nextTick(cb, _err); }, autoDestroy: false }); write.cork(); write.write('asd', common.mustCall((err) => { - assert.strictEqual(err.message, 'asd'); + assert.strictEqual(err, _err); })); write.write('asd', common.mustCall((err) => { - assert.strictEqual(err.code, 'ERR_STREAM_DESTROYED'); + assert.strictEqual(err, _err); })); write.on('error', common.mustCall((err) => { - assert.strictEqual(err.message, 'asd'); + assert.strictEqual(err, _err); })); write.uncork(); } @@ -482,5 +484,8 @@ const assert = require('assert'); s.end(common.mustCall((err) => { assert.strictEqual(err, _err); })); + s.on('error', (err) => { + assert.strictEqual(err, _err); + }); s.destroy(_err); } diff --git a/test/parallel/test-stream-writable-end-cb-error.js b/test/parallel/test-stream-writable-end-cb-error.js index 20428f1777fd17..f871c50dbe972c 100644 --- a/test/parallel/test-stream-writable-end-cb-error.js +++ b/test/parallel/test-stream-writable-end-cb-error.js @@ -8,19 +8,20 @@ const stream = require('stream'); // Invoke end callback on failure. const writable = new stream.Writable(); + const _err = new Error('kaboom'); writable._write = (chunk, encoding, cb) => { - process.nextTick(cb, new Error('kaboom')); + process.nextTick(cb, _err); }; writable.on('error', common.mustCall((err) => { - assert.strictEqual(err.message, 'kaboom'); + assert.strictEqual(err, _err); })); writable.write('asd'); writable.end(common.mustCall((err) => { - assert.strictEqual(err.code, 'ERR_STREAM_DESTROYED'); + assert.strictEqual(err, _err); })); writable.end(common.mustCall((err) => { - assert.strictEqual(err.code, 'ERR_STREAM_DESTROYED'); + assert.strictEqual(err, _err); })); } @@ -57,18 +58,12 @@ const stream = require('stream'); } }); w.end('testing ended state', common.mustCall((err) => { - // This errors since .destroy(err), which is invoked by errors - // in same tick below, will error all pending callbacks. - // Does this make sense? Not sure. - assert.strictEqual(err.code, 'ERR_STREAM_DESTROYED'); + assert.strictEqual(err.code, 'ERR_STREAM_WRITE_AFTER_END'); })); assert.strictEqual(w.destroyed, false); assert.strictEqual(w.writableEnded, true); w.end(common.mustCall((err) => { - // This errors since .destroy(err), which is invoked by errors - // in same tick below, will error all pending callbacks. - // Does this make sense? Not sure. - assert.strictEqual(err.code, 'ERR_STREAM_DESTROYED'); + assert.strictEqual(err.code, 'ERR_STREAM_WRITE_AFTER_END'); })); assert.strictEqual(w.destroyed, false); assert.strictEqual(w.writableEnded, true);