summaryrefslogtreecommitdiff
path: root/test/parallel/test-stream-pipeline-uncaught.js
blob: bfac4f1fee8d0b454c4fc0a4cf4f08ab0feb8491 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
'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
}, common.mustSucceed(() => {
  throw new Error('error');
}));