• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Flags: --no-addons
2
3'use strict';
4
5const common = require('../../common');
6const assert = require('assert');
7
8const bindingPath = require.resolve(`./build/${common.buildType}/binding`);
9
10const assertError = (error) => {
11  assert(error instanceof Error);
12  assert.strictEqual(error.code, 'ERR_DLOPEN_DISABLED');
13  assert.strictEqual(
14    error.message,
15    'Cannot load native addon because loading addons is disabled.'
16  );
17};
18
19{
20  let threw = false;
21
22  try {
23    require(bindingPath);
24  } catch (error) {
25    assertError(error);
26    threw = true;
27  }
28
29  assert(threw);
30}
31
32{
33  let threw = false;
34
35  try {
36    process.dlopen({ exports: {} }, bindingPath);
37  } catch (error) {
38    assertError(error);
39    threw = true;
40  }
41
42  assert(threw);
43}
44