summaryrefslogtreecommitdiff
path: root/test/parallel/test-async-wrap-constructor.js
blob: e89bc49df023336b1cc29d2469ebacbb76f676d6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
'use strict';

// This tests that using falsy values in createHook throws an error.

require('../common');
const assert = require('assert');
const async_hooks = require('async_hooks');

[0, 1, false, true, null, 'hello'].forEach((badArg) => {
  const hookNames = ['init', 'before', 'after', 'destroy', 'promiseResolve'];
  hookNames.forEach((field) => {
    assert.throws(() => {
      async_hooks.createHook({ [field]: badArg });
    }, {
      code: 'ERR_ASYNC_CALLBACK',
      name: 'TypeError',
      message: `hook.${field} must be a function`
    });
  });
});