| // Copyright (C) 2015 the V8 project authors. All rights reserved. |
| // This code is governed by the BSD license found in the LICENSE file. |
| `Promise.all` invoked on a constructor value |
| 1. Let C be the this value. |
| 6. Let promiseCapability be NewPromiseCapability(C). |
| 10. Let iteratorRecord be Record {[[iterator]]: iterator, [[done]]: false}. |
| 11. Let result be PerformPromiseAll(iteratorRecord, C, promiseCapability). |
| 13. Return Completion(result). |
| class SubPromise extends Promise { |
| var instance = Promise.all.call(SubPromise); |
| assert.sameValue(instance.constructor, SubPromise); |
| assert.sameValue(instance instanceof SubPromise, true); |
| assert.sameValue(callCount, 1); |
| assert.sameValue(typeof executor, 'function'); |