summaryrefslogtreecommitdiff
path: root/test/parallel/test-event-emitter-no-error-provided-to-error-event.js
blob: bc9eac288737c2c09afa12e62fdb192617310035 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
'use strict';
const common = require('../common');
const assert = require('assert');
const events = require('events');
const domain = require('domain');

{
  const e = new events.EventEmitter();
  const d = domain.create();
  d.add(e);
  d.on('error', common.mustCall(function(er) {
    assert(er instanceof Error, 'error created');
  }));
  e.emit('error');
}

for (const arg of [false, null, undefined]) {
  const e = new events.EventEmitter();
  const d = domain.create();
  d.add(e);
  d.on('error', common.mustCall(function(er) {
    assert(er instanceof Error, 'error created');
  }));
  e.emit('error', arg);
}

for (const arg of [42, 'fortytwo', true]) {
  const e = new events.EventEmitter();
  const d = domain.create();
  d.add(e);
  d.on('error', common.mustCall(function(er) {
    assert.strictEqual(er, arg);
  }));
  e.emit('error', arg);
}