• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1'use strict';
2
3const common = require('../common');
4if (!common.hasCrypto)
5  common.skip('missing crypto');
6
7const fixtures = require('../common/fixtures');
8
9const assert = require('assert');
10const { spawnSync } = require('child_process');
11
12const dep = fixtures.path('policy', 'parent.js');
13{
14  const depPolicy = fixtures.path(
15    'policy',
16    'dependencies',
17    'dependencies-redirect-policy.json');
18  const { status } = spawnSync(
19    process.execPath,
20    [
21      '--experimental-policy', depPolicy, dep,
22    ]
23  );
24  assert.strictEqual(status, 0);
25}
26{
27  const depPolicy = fixtures.path(
28    'policy',
29    'dependencies',
30    'dependencies-redirect-builtin-policy.json');
31  const { status } = spawnSync(
32    process.execPath,
33    [
34      '--experimental-policy', depPolicy, dep,
35    ]
36  );
37  assert.strictEqual(status, 0);
38}
39{
40  const depPolicy = fixtures.path(
41    'policy',
42    'dependencies',
43    'dependencies-redirect-unknown-builtin-policy.json');
44  const { status } = spawnSync(
45    process.execPath,
46    [
47      '--experimental-policy', depPolicy, dep,
48    ]
49  );
50  assert.strictEqual(status, 1);
51}
52{
53  const depPolicy = fixtures.path(
54    'policy',
55    'dependencies',
56    'dependencies-wildcard-policy.json');
57  const { status } = spawnSync(
58    process.execPath,
59    [
60      '--experimental-policy', depPolicy, dep,
61    ]
62  );
63  assert.strictEqual(status, 0);
64}
65{
66  const depPolicy = fixtures.path(
67    'policy',
68    'dependencies',
69    'dependencies-empty-policy.json');
70  const { status } = spawnSync(
71    process.execPath,
72    [
73      '--experimental-policy', depPolicy, dep,
74    ]
75  );
76  assert.strictEqual(status, 1);
77}
78{
79  const depPolicy = fixtures.path(
80    'policy',
81    'dependencies',
82    'dependencies-missing-policy.json');
83  const { status } = spawnSync(
84    process.execPath,
85    [
86      '--experimental-policy', depPolicy, dep,
87    ]
88  );
89  assert.strictEqual(status, 1);
90}
91