arg-non-thenable.js |
---
description: >
`Promise.resolve` invoked with an object whose `then` property is not callable
es6id: 25.4.4.5
info: |
6. Let resolveResult be Call(promiseCapability.[[Resolve]], undefined,
«x»).
[...]
25.4.1.3.2 Promise Resolve Functions
11. If IsCallable(thenAction) is false, then
a. Return FulfillPromise(promise, resolution).
12. Perform EnqueueJob ("PromiseJobs", PromiseResolveThenableJob,
«promise, resolution, thenAction»)
13. Return undefined.
flags: [async]
--- |
849 |
arg-poisoned-then.js |
---
description: >
`Promise.resolve` invoked with an object with a "poisoned" `then` property
es6id: 25.4.4.5
info: |
6. Let resolveResult be Call(promiseCapability.[[Resolve]], undefined,
«x»).
[...]
25.4.1.3.2 Promise Resolve Functions
8. Let then be Get(resolution, "then").
9. If then is an abrupt completion, then
a. Return RejectPromise(promise, then.[[value]]).
flags: [async]
--- |
975 |
arg-uniq-ctor.js |
---
description: >
`Promise.resolve` invoked with a Promise with a unique constructor
es6id: 25.4.4.5
info: |
1. Let C be the this value.
[...]
3. If IsPromise(x) is true,
a. Let xConstructor be Get(x, "constructor").
b. ReturnIfAbrupt(xConstructor).
c. If SameValue(xConstructor, C) is true, return x.
4. Let promiseCapability be NewPromiseCapability(C).
[...]
8. Return promiseCapability.[[Promise]].
--- |
797 |
browser.js |
|
0 |
capability-executor-called-twice.js |
---
es6id: 25.4.4.5
description: >
Throws a TypeError if capabilities executor already called with non-undefined values.
info: |
Promise.resolve ( x )
...
4. Let promiseCapability be NewPromiseCapability(C).
5. ReturnIfAbrupt(promiseCapability).
...
25.4.1.5.1 GetCapabilitiesExecutor Functions
...
3. If promiseCapability.[[Resolve]] is not undefined, throw a TypeError exception.
4. If promiseCapability.[[Reject]] is not undefined, throw a TypeError exception.
5. Set promiseCapability.[[Resolve]] to resolve.
6. Set promiseCapability.[[Reject]] to reject.
...
--- |
2588 |
capability-executor-not-callable.js |
---
es6id: 25.4.4.5
description: >
Throws a TypeError if either resolve or reject capability is not callable.
info: |
Promise.resolve ( x )
...
4. Let promiseCapability be NewPromiseCapability(C).
5. ReturnIfAbrupt(promiseCapability).
...
25.4.1.5 NewPromiseCapability ( C )
...
4. Let executor be a new built-in function object as defined in GetCapabilitiesExecutor Functions (25.4.1.5.1).
5. Set the [[Capability]] internal slot of executor to promiseCapability.
6. Let promise be Construct(C, «executor»).
7. ReturnIfAbrupt(promise).
8. If IsCallable(promiseCapability.[[Resolve]]) is false, throw a TypeError exception.
9. If IsCallable(promiseCapability.[[Reject]]) is false, throw a TypeError exception.
...
--- |
2763 |
capability-invocation-error.js |
---
description: Abrupt completion returned by "resolve" capability
esid: sec-promise.resolve
info: |
1. Let C be the this value.
[...]
4. Let promiseCapability be ? NewPromiseCapability(C).
5. Perform ? Call(promiseCapability.[[Resolve]], undefined, « x »).
25.4.1.5 NewPromiseCapability
[...]
6. Let promise be Construct(C, «executor»).
7. ReturnIfAbrupt(promise).
--- |
821 |
context-non-object-with-promise.js |
---
es6id: 25.4.4.5
description: >
Throws a TypeError if `this` is not an Object.
info: |
Promise.resolve ( x )
1. Let C be the this value.
2. If Type(C) is not Object, throw a TypeError exception.
...
features: [Symbol]
--- |
1289 |
ctx-ctor-throws.js |
---
description: >
`Promise.resolve` invoked on a constructor value that throws an error
es6id: 25.4.4.5
info: |
1. Let C be the this value.
[...]
4. Let promiseCapability be NewPromiseCapability(C).
5. ReturnIfAbrupt(promiseCapability).
25.4.1.5 NewPromiseCapability
[...]
6. Let promise be Construct(C, «executor»).
7. ReturnIfAbrupt(promise).
--- |
704 |
ctx-ctor.js |
---
description: >
`Promise.resolve` invoked on a constructor value
es6id: 25.4.4.5
info: |
1. Let C be the this value.
[...]
4. Let promiseCapability be NewPromiseCapability(C).
[...]
8. Return promiseCapability.[[Promise]].
features: [class]
--- |
830 |
ctx-non-ctor.js |
---
description: >
`Promise.resolve` invoked on a non-constructor value
es6id: 25.4.4.5
info: |
[...]
4. Let promiseCapability be NewPromiseCapability(C).
5. ReturnIfAbrupt(promiseCapability).
--- |
451 |
ctx-non-object.js |
---
description: >
`Promise.resolve` invoked on a non-object value
es6id: 25.4.4.5
info: |
1. Let C be the this value.
2. If Type(C) is not Object, throw a TypeError exception.
features: [Symbol]
--- |
850 |
length.js |
---
es6id: 25.4.4.5
description: Promise.resolve `length` property
info: |
ES6 Section 17:
Every built-in Function object, including constructors, has a length
property whose value is an integer. Unless otherwise specified, this value
is equal to the largest number of named arguments shown in the subclause
headings for the function description, including optional parameters.
[...]
Unless otherwise specified, the length property of a built-in Function
object has the attributes { [[Writable]]: false, [[Enumerable]]: false,
[[Configurable]]: true }.
includes: [propertyHelper.js]
--- |
911 |
name.js |
---
es6id: 25.4.4.5
description: Promise.resolve `name` property
info: |
ES6 Section 17:
Every built-in Function object, including constructors, that is not
identified as an anonymous function has a name property whose value is a
String. Unless otherwise specified, this value is the name that is given to
the function in this specification.
[...]
Unless otherwise specified, the name property of a built-in Function
object, if it exists, has the attributes { [[Writable]]: false,
[[Enumerable]]: false, [[Configurable]]: true }.
includes: [propertyHelper.js]
--- |
895 |
not-a-constructor.js |
---
esid: sec-ecmascript-standard-built-in-objects
description: >
Promise.resolve does not implement [[Construct]], is not new-able
info: |
ECMAScript Function Objects
Built-in function objects that are not identified as constructors do not
implement the [[Construct]] internal method unless otherwise specified in
the description of a particular function.
sec-evaluatenew
...
7. If IsConstructor(constructor) is false, throw a TypeError exception.
...
includes: [isConstructor.js]
features: [Reflect.construct, arrow-function]
--- |
882 |
prop-desc.js |
---
es6id: 25.4.4.5_A1.2_T1
author: Jordan Harband
description: Promise.resolve should be non-enumerable
info: |
ES6 Section 17
Every other data property described in clauses 18 through 26 and in Annex
B.2 has the attributes { [[Writable]]: true, [[Enumerable]]: false,
[[Configurable]]: true } unless otherwise specified.
includes: [propertyHelper.js]
--- |
587 |
resolve-from-promise-capability.js |
---
es6id: 25.4.4.5
description: >
Resolve function is called after Promise constructor returns.
info: |
Promise.resolve ( x )
...
4. Let promiseCapability be NewPromiseCapability(C).
5. ReturnIfAbrupt(promiseCapability).
6. Let resolveResult be Call(promiseCapability.[[Resolve]], undefined, «x»).
7. ReturnIfAbrupt(resolveResult).
...
--- |
1133 |
resolve-non-obj.js |
---
description: Resolving with a non-object value
es6id: 25.4.4.5
info: |
[...]
6. Let resolveResult be Call(promiseCapability.[[Resolve]], undefined,
«x»).
[...]
25.4.1.3.2 Promise Resolve Functions
[...]
7. If Type(resolution) is not Object, then
a. Return FulfillPromise(promise, resolution).
flags: [async]
--- |
751 |
resolve-non-thenable.js |
---
description: Resolving with a non-thenable object value
es6id: 25.4.4.5
info: |
[...]
6. Let resolveResult be Call(promiseCapability.[[Resolve]], undefined,
«x»).
[...]
25.4.1.3.2 Promise Resolve Functions
[...]
8. Let then be Get(resolution, "then").
9. If then is an abrupt completion, then
[...]
10. Let thenAction be then.[[value]].
11. If IsCallable(thenAction) is false, then
a. Return FulfillPromise(promise, resolution).
flags: [async]
--- |
930 |
resolve-poisoned-then.js |
---
description: Resolving with an object with a "poisoned" then property
es6id: 25.4.4.5
info: |
[...]
6. Let resolveResult be Call(promiseCapability.[[Resolve]], undefined,
«x»).
[...]
25.4.1.3.2 Promise Resolve Functions
[...]
8. Let then be Get(resolution, "then").
9. If then is an abrupt completion, then
a. Return RejectPromise(promise, then.[[value]]).
flags: [async]
--- |
958 |
resolve-prms-cstm-then.js |
---
description: Resolving with a resolved Promise instance whose `then` method has been overridden
es6id: 25.4.4.5
info: |
[...]
6. Let resolveResult be Call(promiseCapability.[[Resolve]], undefined,
«x»).
[...]
25.4.1.3.2 Promise Resolve Functions
[...]
8. Let then be Get(resolution, "then").
9. If then is an abrupt completion, then
[...]
10. Let thenAction be then.[[value]].
11. If IsCallable(thenAction) is false, then
[...]
12. Perform EnqueueJob ("PromiseJobs", PromiseResolveThenableJob,
«promise, resolution, thenAction»)
--- |
1153 |
resolve-self.js |
---
description: Resolving with a reference to the promise itself
es6id: 25.4.4.5
info: |
1. Let C be the this value.
[...]
4. Let promiseCapability be NewPromiseCapability(C).
[...]
6. Let resolveResult be Call(promiseCapability.[[Resolve]], undefined,
«x»).
[...]
25.4.1.3.2 Promise Resolve Functions
[...]
6. If SameValue(resolution, promise) is true, then
a. Let selfResolutionError be a newly created TypeError object.
b. Return RejectPromise(promise, selfResolutionError).
flags: [async]
--- |
1307 |
resolve-thenable.js |
---
description: Resolving with a thenable object value
es6id: 25.4.4.5
info: |
[...]
6. Let resolveResult be Call(promiseCapability.[[Resolve]], undefined,
«x»).
[...]
25.4.1.3.2 Promise Resolve Functions
[...]
8. Let then be Get(resolution, "then").
9. If then is an abrupt completion, then
[...]
10. Let thenAction be then.[[value]].
11. If IsCallable(thenAction) is false, then
[...]
12. Perform EnqueueJob ("PromiseJobs", PromiseResolveThenableJob,
«promise, resolution, thenAction»)
flags: [async]
--- |
1071 |
S25.4.4.5_A1.1_T1.js |
---
info: |
Promise.resolve
es6id: S25.4.4.5_A1.1_T1
author: Sam Mikes
description: Promise.resolve is a function
--- |
368 |
S25.4.4.5_A2.1_T1.js |
---
es6id: S25.4.4.5_A2.1_T1
author: Sam Mikes
description: Promise.resolve passes through a promise w/ same Constructor
--- |
381 |
S25.4.4.5_A2.2_T1.js |
---
es6id: S25.4.4.5_A2.2_T1
author: Sam Mikes
description: Promise.resolve passes through an unsettled promise w/ same Constructor
flags: [async]
--- |
634 |
S25.4.4.5_A2.3_T1.js |
---
es6id: S25.4.4.5_A2.3_T1
author: Sam Mikes
description: Promise.resolve passes through an unsettled promise w/ same Constructor
flags: [async]
--- |
726 |
S25.4.4.5_A3.1_T1.js |
---
info: |
Promise.resolve
es6id: S25.4.4.5_A3.1_T1
author: Sam Mikes
description: Promise.resolve delegates to foreign thenable
includes: [promiseHelper.js]
flags: [async]
--- |
1295 |
S25.4.4.5_A4.1_T1.js |
---
info: |
Section 25.4.1.4.2
es6id: S25.4.4.5_A3.1_T1
author: Sam Mikes
description: self-resolved Promise throws TypeError
flags: [async]
--- |
608 |
S25.Promise_resolve_foreign_thenable_1.js |
---
info: |
Promise.resolve
es6id: S25.4.4.5
author: Sam Mikes
description: Promise.resolve delegates to foreign thenable
flags: [async]
--- |
471 |
S25.Promise_resolve_foreign_thenable_2.js |
---
info: |
Promise.resolve
es6id: S25.4.4.5
author: Sam Mikes
description: Promise.resolve delegates to foreign thenable
includes: [promiseHelper.js]
flags: [async]
--- |
1057 |
shell.js |
|
0 |