• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1'use strict';
2
3const common = require('../common');
4if (!common.hasCrypto)
5  common.skip('missing crypto');
6common.requireNoPackageJSONAbove();
7
8const fixtures = require('../common/fixtures');
9
10const assert = require('assert');
11const { spawnSync } = require('child_process');
12
13{
14  const dep = fixtures.path('policy', 'main.mjs');
15  const depPolicy = fixtures.path(
16    'policy',
17    'dependencies',
18    'dependencies-scopes-policy.json');
19  const { status } = spawnSync(
20    process.execPath,
21    [
22      '--experimental-policy', depPolicy, dep,
23    ]
24  );
25  assert.strictEqual(status, 0);
26}
27{
28  const dep = fixtures.path('policy', 'multi-deps.js');
29  const depPolicy = fixtures.path(
30    'policy',
31    'dependencies',
32    'dependencies-scopes-and-resources-policy.json');
33  const { status } = spawnSync(
34    process.execPath,
35    [
36      '--experimental-policy', depPolicy, dep,
37    ]
38  );
39  assert.strictEqual(status, 0);
40}
41