js/src/tests/js1_5/Array/regress-350256-01.js

changeset 0
6474c204b198
equal deleted inserted replaced
-1:000000000000 0:b9bc586183e7
1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* This Source Code Form is subject to the terms of the Mozilla Public
3 * License, v. 2.0. If a copy of the MPL was not distributed with this
4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
5
6 //-----------------------------------------------------------------------------
7 var BUGNUMBER = 350256;
8 var summary = 'Array.apply maximum arguments';
9 var actual = '';
10 var expect = '';
11
12
13 //-----------------------------------------------------------------------------
14 test(Math.pow(2, 16));
15 //-----------------------------------------------------------------------------
16
17 function test(length)
18 {
19 enterFunc ('test');
20 printBugNumber(BUGNUMBER);
21 printStatus (summary);
22
23
24 var a = new Array();
25 a[length - 2] = 'length-2';
26 a[length - 1] = 'length-1';
27
28 var b = Array.apply(null, a);
29
30 expect = length + ',length-2,length-1';
31 actual = b.length + "," + b[length - 2] + "," + b[length - 1];
32 reportCompare(expect, actual, summary);
33
34 function f() {
35 return arguments.length + "," + arguments[length - 2] + "," +
36 arguments[length - 1];
37 }
38
39 expect = length + ',length-2,length-1';
40 actual = f.apply(null, a);
41
42 reportCompare(expect, actual, summary);
43
44 exitFunc ('test');
45 }

mercurial