| 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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
 | | var test = require('tape'); |  | var ErrorWithCause = require('error-cause/Error'); |  |   |  | var inspect = require('../'); |  |   |  | test('type error', function (t) { |  |     t.plan(1); |  |     var aerr = new TypeError(); |  |     aerr.foo = 555; |  |     aerr.bar = [1, 2, 3]; |  |   |  |     var berr = new TypeError('tuv'); |  |     berr.baz = 555; |  |   |  |     var cerr = new SyntaxError(); |  |     cerr.message = 'whoa'; |  |     cerr['a-b'] = 5; |  |   |  |     var withCause = new ErrorWithCause('foo', { cause: 'bar' }); |  |     var withCausePlus = new ErrorWithCause('foo', { cause: 'bar' }); |  |     withCausePlus.foo = 'bar'; |  |     var withUndefinedCause = new ErrorWithCause('foo', { cause: undefined }); |  |     var withEnumerableCause = new Error('foo'); |  |     withEnumerableCause.cause = 'bar'; |  |   |  |     var obj = [ |  |         new TypeError(), |  |         new TypeError('xxx'), |  |         aerr, |  |         berr, |  |         cerr, |  |         withCause, |  |         withCausePlus, |  |         withUndefinedCause, |  |         withEnumerableCause |  |     ]; |  |     t.equal(inspect(obj), '[ ' + [ |  |         '[TypeError]', |  |         '[TypeError: xxx]', |  |         '{ [TypeError] foo: 555, bar: [ 1, 2, 3 ] }', |  |         '{ [TypeError: tuv] baz: 555 }', |  |         '{ [SyntaxError: whoa] message: \'whoa\', \'a-b\': 5 }', |  |         'cause' in Error.prototype ? '[Error: foo]' : '{ [Error: foo] [cause]: \'bar\' }', |  |         '{ [Error: foo] ' + ('cause' in Error.prototype ? '' : '[cause]: \'bar\', ') + 'foo: \'bar\' }', |  |         'cause' in Error.prototype ? '[Error: foo]' : '{ [Error: foo] [cause]: undefined }', |  |         '{ [Error: foo] cause: \'bar\' }' |  |     ].join(', ') + ' ]'); |  | }); | 
 |