summaryrefslogtreecommitdiffstats
path: root/js/src/tests/non262/Tuple/prototype/filter/indexed-setters.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/tests/non262/Tuple/prototype/filter/indexed-setters.js')
-rw-r--r--js/src/tests/non262/Tuple/prototype/filter/indexed-setters.js16
1 files changed, 16 insertions, 0 deletions
diff --git a/js/src/tests/non262/Tuple/prototype/filter/indexed-setters.js b/js/src/tests/non262/Tuple/prototype/filter/indexed-setters.js
new file mode 100644
index 0000000000..a110b460e1
--- /dev/null
+++ b/js/src/tests/non262/Tuple/prototype/filter/indexed-setters.js
@@ -0,0 +1,16 @@
+// |reftest| skip-if(!this.hasOwnProperty("Tuple"))
+
+// If an indexed Array setter is overridden, TupleSplice shouldn't use it
+// when constructing the intermediate array
+
+var z = 5;
+print("1111");
+Object.defineProperty(Array.prototype, '0', { set: function(y) { z = 42; }});
+print("2222");
+let newT = #[1,2,3].filter(x => true);
+print("3333");
+assertEq(z, 5);
+print("4444");
+
+reportCompare(0, 0);
+