summaryrefslogtreecommitdiffstats
path: root/js/src/tests/test262/language/module-code/top-level-await/await-awaits-thenables-that-throw.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/tests/test262/language/module-code/top-level-await/await-awaits-thenables-that-throw.js')
-rw-r--r--js/src/tests/test262/language/module-code/top-level-await/await-awaits-thenables-that-throw.js30
1 files changed, 30 insertions, 0 deletions
diff --git a/js/src/tests/test262/language/module-code/top-level-await/await-awaits-thenables-that-throw.js b/js/src/tests/test262/language/module-code/top-level-await/await-awaits-thenables-that-throw.js
new file mode 100644
index 0000000000..c3d28ddc2d
--- /dev/null
+++ b/js/src/tests/test262/language/module-code/top-level-await/await-awaits-thenables-that-throw.js
@@ -0,0 +1,30 @@
+// |reftest| module async
+// Copyright 2019 Leo Balter. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/*---
+esid: prod-AwaitExpression
+description: >
+ Await can await any thenable.
+flags: [module, async]
+features: [top-level-await]
+---*/
+
+var error = {};
+var thenable = {
+ then: function (resolve, reject) {
+ throw error;
+ }
+}
+
+var caught = false;
+try {
+ await thenable;
+} catch(e) {
+ caught = e;
+
+}
+
+assert.sameValue(caught, error);
+
+$DONE();