Promise.any: additional "resolve from rejection" tests

This commit is contained in:
Rick Waldron 2020-03-25 09:55:34 -04:00
parent a05fb94eba
commit b21b0c1820
3 changed files with 44 additions and 0 deletions

View File

@ -0,0 +1,22 @@
// Copyright (C) 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-promise.any
description: >
Promise.any resolves with the first item that does not reject.
flags: [async]
features: [Promise.any, arrow-function]
---*/
let fulfillables = [
Promise.reject('a'),
new Promise((resolve, reject) => reject('b')),
Promise.all([Promise.reject('c')]),
Promise.reject('d').catch(v => v),
];
Promise.any(fulfillables)
.then((resolution) => {
assert.sameValue(resolution, 'd');
}).then($DONE, $DONE);

View File

@ -0,0 +1,22 @@
// Copyright (C) 2020 Rick Waldron. All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.
/*---
esid: sec-promise.any
description: >
Promise.any resolves with the first item that does not reject.
flags: [async]
features: [Promise.any, arrow-function]
---*/
let fulfillables = [
Promise.reject('a'),
new Promise((resolve, reject) => reject('b')),
Promise.all([Promise.reject('c')]),
Promise.resolve(Promise.reject('d').finally(v => v)),
];
Promise.any(fulfillables)
.then((resolution) => {
assert.sameValue(resolution, 'd');
}).then($DONE, $DONE);