js/src/jit-test/tests/collections/Array-of-4.js

changeset 0
6474c204b198
equal deleted inserted replaced
-1:000000000000 0:7994538ed1e9
1 // Array.of does not trigger prototype setters.
2 // (It defines elements rather than assigning to them.)
3
4 var status = "pass";
5 Object.defineProperty(Array.prototype, "0", {set: v => status = "FAIL 1"});
6 assertEq(Array.of(1)[0], 1);
7 assertEq(status, "pass");
8
9 function Bag() {}
10 Bag.of = Array.of;
11 Object.defineProperty(Bag.prototype, "0", {set: v => status = "FAIL 2"});
12 assertEq(Bag.of(1)[0], 1);
13 assertEq(status, "pass");

mercurial