Wed, 31 Dec 2014 06:09:35 +0100
Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.
1 /*
2 * Any copyright is dedicated to the Public Domain.
3 * http://creativecommons.org/licenses/publicdomain/
4 */
6 //-----------------------------------------------------------------------------
7 var BUGNUMBER = 614070;
8 var summary = 'Array.prototype.unshift without args';
10 print(BUGNUMBER + ": " + summary);
12 /**************
13 * BEGIN TEST *
14 **************/
16 var a = {};
17 a.length = 4294967296;
18 assertEq([].unshift.call(a), 0);
19 assertEq(a.length, 0);
21 function testGetSet(len, expected) {
22 var newlen;
23 var a = { get length() { return len; }, set length(v) { newlen = v; } };
24 var res = [].unshift.call(a);
25 assertEq(res, expected);
26 assertEq(newlen, expected);
27 }
29 testGetSet(0, 0);
30 testGetSet(10, 10);
31 testGetSet("1", 1);
32 testGetSet(null, 0);
33 testGetSet(4294967297, 1);
34 testGetSet(-5, 4294967291);
36 /******************************************************************************/
38 if (typeof reportCompare === "function")
39 reportCompare(true, true);
41 print("All tests passed!");