summaryrefslogtreecommitdiffstats
path: root/js/src/tests/non262/Tuple/from/iter-next-value-error.js
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--js/src/tests/non262/Tuple/from/iter-next-value-error.js25
1 files changed, 25 insertions, 0 deletions
diff --git a/js/src/tests/non262/Tuple/from/iter-next-value-error.js b/js/src/tests/non262/Tuple/from/iter-next-value-error.js
new file mode 100644
index 0000000000..e3b78f0c60
--- /dev/null
+++ b/js/src/tests/non262/Tuple/from/iter-next-value-error.js
@@ -0,0 +1,25 @@
+// |reftest| skip-if(!this.hasOwnProperty("Tuple"))
+/* Step 6b. */
+/* AddEntriesFromIterable should throw if next() throws */
+
+var iter = {};
+iter[Symbol.iterator] = function() {
+ return {
+ next: function() {
+ var result = {};
+ Object.defineProperty(result, 'value', {
+ get: function() {
+ throw new SyntaxError();
+ }
+ });
+
+ return result;
+ }
+ };
+};
+
+assertThrowsInstanceOf(function() {
+ Tuple.from(iter);
+}, SyntaxError, "from() should throw if next() returns value that throws");
+
+reportCompare(0, 0);