summaryrefslogtreecommitdiff
path: root/deps/v8/test/mjsunit/promise-perform-all-resolve-lookup.js
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/test/mjsunit/promise-perform-all-resolve-lookup.js')
-rw-r--r--deps/v8/test/mjsunit/promise-perform-all-resolve-lookup.js28
1 files changed, 28 insertions, 0 deletions
diff --git a/deps/v8/test/mjsunit/promise-perform-all-resolve-lookup.js b/deps/v8/test/mjsunit/promise-perform-all-resolve-lookup.js
new file mode 100644
index 0000000000..8e877df63b
--- /dev/null
+++ b/deps/v8/test/mjsunit/promise-perform-all-resolve-lookup.js
@@ -0,0 +1,28 @@
+// Copyright 2019 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.
+//
+// Flags: --allow-natives-syntax
+
+let count = 0;
+class MyPromise extends Promise {
+ static get resolve() {
+ count++;
+ return super.resolve;
+ }
+}
+
+MyPromise.all([1, 2, 3, 4, 5]);
+assertEquals(1, count);
+%PerformMicrotaskCheckpoint();
+assertEquals(1, count);
+
+count = 0;
+MyPromise.all([
+ Promise.resolve(1),
+ Promise.resolve(2),
+ Promise.reject(3)
+]);
+assertEquals(1, count);
+%PerformMicrotaskCheckpoint();
+assertEquals(1, count);