summaryrefslogtreecommitdiff
path: root/test/built-ins/Promise/race/S25.4.4.3_A3.1_T2.js
blob: 07c20f5708efc09343a342af2dbd2997a6f7b3e2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// Copyright 2014 Cubane Canada, Inc.  All rights reserved.
// See LICENSE for details.

/*---
info: |
    Promise.race must throw TypeError per
    CreatePromiseCapabilityRecord step 8 when
    promiseCapabliity.[[Resolve]] is not callable
es6id: S25.4.4.3_A3.1_T2
author: Sam Mikes
description: Promise.race throws TypeError, even on empty array, when 'this' does not conform to Promise constructor
---*/

function BadPromiseConstructor(f) {
  f(undefined, undefined);
}

assert.throws(TypeError, function() {
  Promise.race.call(BadPromiseConstructor, []);
});