1// Flags: --expose-internals 2'use strict'; 3require('../common'); 4const assert = require('assert'); 5const { E, SystemError, codes } = require('internal/errors'); 6 7let stackTraceLimit; 8Reflect.defineProperty(Error, 'stackTraceLimit', { 9 get() { return stackTraceLimit; }, 10 set(value) { stackTraceLimit = value; }, 11}); 12 13E('ERR_TEST', 'custom message', SystemError); 14const { ERR_TEST } = codes; 15 16const ctx = { 17 code: 'ETEST', 18 message: 'code message', 19 syscall: 'syscall_test', 20 path: '/str', 21 dest: '/str2' 22}; 23assert.throws( 24 () => { throw new ERR_TEST(ctx); }, 25 { 26 code: 'ERR_TEST', 27 name: 'SystemError', 28 info: ctx, 29 } 30); 31