Skip to content

Commit bef1dfb

Browse files
author
vdemedes
committed
support promises rejected with non-Errors
1 parent 1560138 commit bef1dfb

File tree

2 files changed

+19
-0
lines changed

2 files changed

+19
-0
lines changed

lib/test.js

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -125,6 +125,14 @@ Test.prototype.run = function () {
125125
self.exit();
126126
})
127127
.catch(function (err) {
128+
if (!(err instanceof Error)) {
129+
err = new assert.AssertionError({
130+
actual: err,
131+
message: 'Promise rejected with "' + err + '"',
132+
operator: 'promise'
133+
});
134+
}
135+
128136
self._setAssertError(err);
129137
self.exit();
130138
});

test/promise.js

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -250,3 +250,14 @@ test('reject', function (t) {
250250
t.end();
251251
});
252252
});
253+
254+
test('reject with non-Error', function (t) {
255+
ava(function () {
256+
return Promise.reject('failure');
257+
}).run().catch(function (err) {
258+
t.ok(err);
259+
t.is(err.name, 'AssertionError');
260+
t.is(err.message, 'Promise rejected with "failure"');
261+
t.end();
262+
});
263+
});

0 commit comments

Comments
 (0)