You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
25 lines
1.1 KiB
25 lines
1.1 KiB
"use strict"; |
|
var test = require('blue-tape'); |
|
var makeErrorCause = require('./index'); |
|
test('make error cause', function (t) { |
|
var TestError = makeErrorCause('TestError'); |
|
var SubTestError = makeErrorCause('SubTestError', TestError); |
|
t.test('render the cause', function (t) { |
|
var cause = new Error('boom!'); |
|
var error = new TestError('something bad', cause); |
|
var again = new SubTestError('more bad', error); |
|
t.equal(error.cause, cause); |
|
t.equal(error.toString(), 'TestError: something bad\nCaused by: Error: boom!'); |
|
t.ok(error instanceof Error); |
|
t.ok(error instanceof makeErrorCause.BaseError); |
|
t.ok(error instanceof TestError); |
|
t.equal(again.cause, error); |
|
t.equal(again.toString(), 'SubTestError: more bad\nCaused by: TestError: something bad\nCaused by: Error: boom!'); |
|
t.ok(again instanceof Error); |
|
t.ok(again instanceof makeErrorCause.BaseError); |
|
t.ok(again instanceof TestError); |
|
t.ok(again instanceof SubTestError); |
|
t.end(); |
|
}); |
|
}); |
|
//# sourceMappingURL=index.spec.js.map
|