OLD | NEW |
1 // Copyright 2008 the V8 project authors. All rights reserved. | 1 // Copyright 2008 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
66 assertArrayEquals([0, 1, 2, 3, 4], a); | 66 assertArrayEquals([0, 1, 2, 3, 4], a); |
67 a = new Array(0, 1, 2, 3, 4, 5); | 67 a = new Array(0, 1, 2, 3, 4, 5); |
68 assertArrayEquals([0, 1, 2, 3, 4, 5], a); | 68 assertArrayEquals([0, 1, 2, 3, 4, 5], a); |
69 a = new Array(0, 1, 2, 3, 4, 5, 6); | 69 a = new Array(0, 1, 2, 3, 4, 5, 6); |
70 assertArrayEquals([0, 1, 2, 3, 4, 5, 6], a); | 70 assertArrayEquals([0, 1, 2, 3, 4, 5, 6], a); |
71 a = new Array(0, 1, 2, 3, 4, 5, 6, 7); | 71 a = new Array(0, 1, 2, 3, 4, 5, 6, 7); |
72 assertArrayEquals([0, 1, 2, 3, 4, 5, 6, 7], a); | 72 assertArrayEquals([0, 1, 2, 3, 4, 5, 6, 7], a); |
73 a = new Array(0, 1, 2, 3, 4, 5, 6, 7, 8); | 73 a = new Array(0, 1, 2, 3, 4, 5, 6, 7, 8); |
74 assertArrayEquals([0, 1, 2, 3, 4, 5, 6, 7, 8], a); | 74 assertArrayEquals([0, 1, 2, 3, 4, 5, 6, 7, 8], a); |
75 a = new Array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9); | 75 a = new Array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9); |
76 assertArrayEquals([0, 1, 2, 3, 4, 5, 6, 7, 8, 9], a); | 76 assertArrayEquals([0, 1, 2, 3, 4, 5, 6, 7, 8, 9], a); |
77 } | 77 } |
78 | 78 |
79 | 79 |
80 function innerArrayLiteral(n) { | 80 function innerArrayLiteral(n) { |
81 var a = new Array(n); | 81 var a = new Array(n); |
82 for (var i = 0; i < n; i++) { | 82 for (var i = 0; i < n; i++) { |
83 a[i] = i * 2 + 7; | 83 a[i] = i * 2 + 7; |
84 } | 84 } |
85 return a.join(); | 85 return a.join(); |
86 } | 86 } |
87 | 87 |
88 | 88 |
89 function testConstructOfSizeSize(n) { | 89 function testConstructOfSizeSize(n) { |
90 var str = innerArrayLiteral(n); | 90 var str = innerArrayLiteral(n); |
91 var a = eval('[' + str + ']'); | 91 var a = eval('[' + str + ']'); |
92 var b = eval('new Array(' + str + ')') | 92 var b = eval('new Array(' + str + ')') |
93 var c = eval('Array(' + str + ')') | 93 var c = eval('Array(' + str + ')') |
94 assertEquals(n, a.length); | 94 assertEquals(n, a.length); |
95 assertArrayEquals(a, b); | 95 assertArrayEquals(a, b); |
96 assertArrayEquals(a, c); | 96 assertArrayEquals(a, c); |
97 } | 97 } |
98 | 98 |
99 | 99 |
100 for (var i = 0; i < loop_count; i++) { | 100 for (var i = 0; i < loop_count; i++) { |
101 // JSObject::kInitialMaxFastElementArray is 10000. | 101 // JSObject::kInitialMaxFastElementArray is 10000. |
102 for (var j = 1000; j < 12000; j += 1000) { | 102 for (var j = 1000; j < 12000; j += 1000) { |
103 testConstructOfSizeSize(j); | 103 testConstructOfSizeSize(j); |
104 } | 104 } |
105 } | 105 } |
106 | 106 |
107 | 107 |
108 for (var i = 0; i < loop_count; i++) { | 108 for (var i = 0; i < loop_count; i++) { |
109 assertArrayEquals(['xxx'], new Array('xxx')); | 109 assertArrayEquals(['xxx'], new Array('xxx')); |
110 assertArrayEquals(['xxx'], Array('xxx')); | 110 assertArrayEquals(['xxx'], Array('xxx')); |
111 assertArrayEquals([true], new Array(true)); | 111 assertArrayEquals([true], new Array(true)); |
112 assertArrayEquals([false], Array(false)); | 112 assertArrayEquals([false], Array(false)); |
113 assertArrayEquals([{a:1}], new Array({a:1})); | 113 assertArrayEquals([{a:1}], new Array({a:1})); |
114 assertArrayEquals([{b:2}], Array({b:2})); | 114 assertArrayEquals([{b:2}], Array({b:2})); |
115 } | 115 } |
116 | 116 |
117 | 117 |
118 assertThrows('new Array(3.14)'); | 118 assertThrows('new Array(3.14)'); |
119 assertThrows('Array(2.72)'); | 119 assertThrows('Array(2.72)'); |
OLD | NEW |