node/test/parallel/test-permission-has.js
Rafael Gonzaga c5c696547e
src,permission: add support to permission.has(addon)
PR-URL: https://github.com/nodejs/node/pull/58951
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Ilyas Shabi <ilyasshabi94@gmail.com>
2025-07-07 15:21:07 +00:00

38 lines
1.1 KiB
JavaScript

// Flags: --permission --allow-fs-read=*
'use strict';
const common = require('../common');
const assert = require('assert');
{
assert.ok(typeof process.permission.has === 'function');
assert.throws(() => {
process.permission.has(null, '');
}, common.expectsError({
code: 'ERR_INVALID_ARG_TYPE',
message: 'The "scope" argument must be of type string. Received null',
}));
assert.ok(!process.permission.has('invalid-key'));
assert.throws(() => {
process.permission.has('fs', {});
}, common.expectsError({
code: 'ERR_INVALID_ARG_TYPE',
message: 'The "reference" argument must be of type string. Received an instance of Object',
}));
}
{
assert.ok(!process.permission.has('FileSystemWrite', Buffer.from('reference')));
}
{
assert.ok(!process.permission.has('fs'));
assert.ok(process.permission.has('fs.read'));
assert.ok(!process.permission.has('fs.write'));
assert.ok(!process.permission.has('wasi'));
assert.ok(!process.permission.has('worker'));
assert.ok(!process.permission.has('inspector'));
assert.ok(!process.permission.has('net'));
assert.ok(!process.permission.has('addon'));
}