summaryrefslogtreecommitdiff
path: root/test/parallel/test-errors-systemerror-stackTraceLimit-custom-setter.js
blob: d89ec22fc4656aefd7c8dc2fa9aba6fba67486e0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
// Flags: --expose-internals
'use strict';
require('../common');
const assert = require('assert');
const { E, SystemError, codes } = require('internal/errors');

let stackTraceLimit;
Reflect.defineProperty(Error, 'stackTraceLimit', {
  get() { return stackTraceLimit; },
  set(value) { stackTraceLimit = value; },
});

E('ERR_TEST', 'custom message', SystemError);
const { ERR_TEST } = codes;

const ctx = {
  code: 'ETEST',
  message: 'code message',
  syscall: 'syscall_test',
  path: '/str',
  dest: '/str2'
};
assert.throws(
  () => { throw new ERR_TEST(ctx); },
  {
    code: 'ERR_TEST',
    name: 'SystemError',
    info: ctx,
  }
);