js/src/tests/ecma_5/Array/redefine-nonwritable-length-nonnumeric.js

changeset 0
6474c204b198
equal deleted inserted replaced
-1:000000000000 0:b8f8659f9f67
1 /*
2 * Any copyright is dedicated to the Public Domain.
3 * http://creativecommons.org/licenses/publicdomain/
4 * Contributor:
5 * Jeff Walden <jwalden+code@mit.edu>
6 */
7
8 //-----------------------------------------------------------------------------
9 var BUGNUMBER = 866700;
10 var summary = "Assertion redefining non-writable length to a non-numeric value";
11
12 print(BUGNUMBER + ": " + summary);
13
14 /**************
15 * BEGIN TEST *
16 **************/
17
18 var arr = [];
19 Object.defineProperty(arr, "length", { value: 0, writable: false });
20
21 // Per Array's magical behavior, the value in the descriptor gets canonicalized
22 // *before* SameValue comparisons occur, so this shouldn't throw.
23 Object.defineProperty(arr, "length", { value: '' });
24
25 assertEq(arr.length, 0);
26
27 /******************************************************************************/
28
29 if (typeof reportCompare === "function")
30 reportCompare(true, true);
31
32 print("Tests complete");

mercurial