Skip to content

Commit

Permalink
[Tests] fix thrower stack in node 0.8
Browse files Browse the repository at this point in the history
  • Loading branch information
ljharb committed Dec 4, 2016
1 parent 995ddb2 commit 8b3a77e
Showing 1 changed file with 9 additions and 7 deletions.
16 changes: 9 additions & 7 deletions test/throws.js
Expand Up @@ -16,6 +16,14 @@ function getNonFunctionMessage(fn) {
}
}

var getter = function () { return 'message'; };
var messageGetterError = Object.defineProperty(
{ custom: 'error' },
'message',
{ configurable: true, enumerable: true, get: getter }
);
var thrower = function () { throw messageGetterError; };

tap.test('failures', function (tt) {
tt.plan(1);

Expand Down Expand Up @@ -173,14 +181,8 @@ tap.test('failures', function (tt) {

test('custom error messages', function (t) {
t.plan(3);
var getter = function () { return 'message'; };
var messageGetterError = Object.defineProperty(
{ custom: 'error' },
'message',
{ configurable: true, enumerable: true, get: getter }
);
t.equal(Object.prototype.propertyIsEnumerable.call(messageGetterError, 'message'), true, '"message" is enumerable');
t.throws(function () { throw messageGetterError; }, "{ custom: 'error', message: 'message' }");
t.throws(thrower, "{ custom: 'error', message: 'message' }");
t.equal(Object.getOwnPropertyDescriptor(messageGetterError, 'message').get, getter, 'getter is still the same');
});

Expand Down

0 comments on commit 8b3a77e

Please sign in to comment.