11cb0ef41Sopenharmony_ci'use strict'; 21cb0ef41Sopenharmony_ci 31cb0ef41Sopenharmony_ciconst common = require('../common'); 41cb0ef41Sopenharmony_ciconst assert = require('assert'); 51cb0ef41Sopenharmony_ciconst { AsyncLocalStorage } = require('async_hooks'); 61cb0ef41Sopenharmony_ci 71cb0ef41Sopenharmony_ci[1, false, '', {}, []].forEach((i) => { 81cb0ef41Sopenharmony_ci assert.throws(() => AsyncLocalStorage.bind(i), { 91cb0ef41Sopenharmony_ci code: 'ERR_INVALID_ARG_TYPE' 101cb0ef41Sopenharmony_ci }); 111cb0ef41Sopenharmony_ci}); 121cb0ef41Sopenharmony_ci 131cb0ef41Sopenharmony_ciconst fn = common.mustCall(AsyncLocalStorage.bind(() => 123)); 141cb0ef41Sopenharmony_ciassert.strictEqual(fn(), 123); 151cb0ef41Sopenharmony_ci 161cb0ef41Sopenharmony_ciconst fn2 = AsyncLocalStorage.bind(common.mustCall((arg) => assert.strictEqual(arg, 'test'))); 171cb0ef41Sopenharmony_cifn2('test'); 18