node/test/parallel/test-permission-has.js
Rafael Gonzaga 2b83f00398
src,permission: fix permission.has on empty param
PR-URL: https://github.com/nodejs/node/pull/60674
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: René <contact.9a5d6388@renegade334.me.uk>
2025-11-16 19:41:47 +00:00

39 lines
1.1 KiB
JavaScript

// Flags: --permission --allow-fs-read=* --allow-fs-write=.
'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'));
}