| 'use strict'; |
| |
| const common = require('../common'); |
| const { |
| pipeline, |
| PassThrough |
| } = require('stream'); |
| const assert = require('assert'); |
| |
| process.on('uncaughtException', common.mustCall((err) => { |
| assert.strictEqual(err.message, 'error'); |
| })); |
| |
| // Ensure that pipeline that ends with Promise |
| // still propagates error to uncaughtException. |
| const s = new PassThrough(); |
| s.end('data'); |
| pipeline(s, async function(source) { |
| for await (const chunk of source) { } // eslint-disable-line no-unused-vars, no-empty |
| }, common.mustSucceed(() => { |
| throw new Error('error'); |
| })); |