// Flags: --experimental-permission --allow-fs-read=* --allow-child-process 'use strict'; const common = require('../common'); common.skipIfWorker(); common.skipIfInspectorDisabled(); const { Session } = require('inspector'); const assert = require('assert'); const { spawnSync } = require('child_process'); if (!common.hasCrypto) common.skip('no crypto'); { assert.throws(() => { const session = new Session(); session.connect(); }, common.expectsError({ code: 'ERR_ACCESS_DENIED', permission: 'Inspector', })); } { const { status, stderr } = spawnSync( process.execPath, [ '--experimental-permission', '-e', '(new (require("inspector")).Session()).connect()', ], ); assert.strictEqual(status, 1); assert.match(stderr.toString(), /Error: Access to this API has been restricted/); }