android_mt6572_jiabo/external/v8/test/mjsunit/es6/debug-promises/throw-with-undefined-reject.js
2025-09-05 16:56:03 +08:00

22 lines
592 B
JavaScript

// Copyright 2014 the V8 project authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// A non-callable reject function throws eagerly
var p = new Promise(function(resolve, reject) {
log.push("resolve");
resolve();
});
function MyPromise(resolver) {
var reject = undefined;
var resolve = function() { };
resolver(resolve, reject);
};
MyPromise.prototype = new Promise(function() {});
MyPromise.__proto__ = Promise;
p.constructor = MyPromise;
assertThrows(()=> p.then(function() { }), TypeError);