mirror of
https://github.com/tc39/test262.git
synced 2025-05-28 10:40:33 +02:00
30 lines
940 B
JavaScript
30 lines
940 B
JavaScript
// 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.call(Custom, ...) does not derive a constructor via SpeciesConstructor()
|
|
info: |
|
|
1. Let C be the this value.
|
|
2. Let promiseCapability be ? NewPromiseCapability(C).
|
|
...
|
|
|
|
NewPromiseCapability ( C )
|
|
|
|
1. If IsConstructor(C) is false, throw a TypeError exception.
|
|
2. NOTE: C is assumed to be a constructor function that supports the parameter conventions of the Promise constructor (see 25.6.3.1).
|
|
...
|
|
|
|
flags: [async]
|
|
features: [Promise.any, Symbol.species, class, computed-property-names, Symbol, arrow-function]
|
|
---*/
|
|
|
|
class Custom extends Promise {
|
|
static get [Symbol.species]() {
|
|
throw new Test262Error('Erroneous Get(C, @@species) via SpeciesConstructor() occurred.');
|
|
}
|
|
}
|
|
|
|
Promise.any.call(Custom, [1]).then(() => $DONE(), $DONE);
|