summaryrefslogtreecommitdiff
path: root/test/parallel/test-async-local-storage-bind.js
blob: d8d4c4599826f95319fad598ed357fca80532e80 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
'use strict';

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

[1, false, '', {}, []].forEach((i) => {
  assert.throws(() => AsyncLocalStorage.bind(i), {
    code: 'ERR_INVALID_ARG_TYPE'
  });
});

const fn = common.mustCall(AsyncLocalStorage.bind(() => 123));
assert.strictEqual(fn(), 123);

const fn2 = AsyncLocalStorage.bind(common.mustCall((arg) => assert.strictEqual(arg, 'test')));
fn2('test');