1// Flags: --expose-internals 2'use strict'; 3 4const common = require('../common'); 5const { internalBinding } = require('internal/test/binding'); 6const providers = internalBinding('async_wrap').Providers; 7const assert = require('assert'); 8const { asyncWrapProviders } = require('async_hooks'); 9 10assert.ok(typeof asyncWrapProviders === 'object'); 11assert.deepStrictEqual(asyncWrapProviders, { __proto__: null, ...providers }); 12 13const providerKeys = Object.keys(asyncWrapProviders); 14assert.throws(() => { 15 asyncWrapProviders[providerKeys[0]] = 'another value'; 16}, common.expectsError({ 17 name: 'TypeError', 18}), 'should not allow modify asyncWrap providers'); 19