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 13 matching lines...) Expand all Loading... | |
24 // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 24 // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
25 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 25 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
26 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 26 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
27 | 27 |
28 /** | 28 /** |
29 * @fileoverview Test splice, shift, unshift, slice and join on small | 29 * @fileoverview Test splice, shift, unshift, slice and join on small |
30 * and large arrays. Some of these methods are specified such that they | 30 * and large arrays. Some of these methods are specified such that they |
31 * should work on other objects too, so we test that too. | 31 * should work on other objects too, so we test that too. |
32 */ | 32 */ |
33 | 33 |
34 /* | |
rafaelw
2014/06/22 23:59:18
This is currently testing the existing SmartMove c
Toon Verwaest
2014/06/23 08:42:36
Sounds good for now.
We'll probably need to build
| |
35 | |
34 var LARGE = 4000000; | 36 var LARGE = 4000000; |
35 var VERYLARGE = 4000000000; | 37 var VERYLARGE = 4000000000; |
36 | 38 |
37 // Nicer for firefox 1.5. Unless you uncomment the following two lines, | 39 // Nicer for firefox 1.5. Unless you uncomment the following two lines, |
38 // smjs will appear to hang on this file. | 40 // smjs will appear to hang on this file. |
39 //var LARGE = 40000; | 41 //var LARGE = 40000; |
40 //var VERYLARGE = 40000; | 42 //var VERYLARGE = 40000; |
41 | 43 |
42 var fourhundredth = LARGE/400; | 44 var fourhundredth = LARGE/400; |
43 | 45 |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
79 unshift_function = function(array, elt) { | 81 unshift_function = function(array, elt) { |
80 return array.unshift(elt); | 82 return array.unshift(elt); |
81 }; | 83 }; |
82 unshift_function_2 = function(array, elt1, elt2) { | 84 unshift_function_2 = function(array, elt1, elt2) { |
83 return array.unshift(elt1, elt2); | 85 return array.unshift(elt1, elt2); |
84 }; | 86 }; |
85 shift_function = function(array) { | 87 shift_function = function(array) { |
86 return array.shift(); | 88 return array.shift(); |
87 }; | 89 }; |
88 } else { | 90 } else { |
89 // Don't run largest size on non-arrays or we'll be here for ever. | 91 // Don't run largest size on non-arrays or we'll be here for ever. |
Toon Verwaest
2014/06/23 08:42:36
.. ok :)
| |
90 poses.pop(); | 92 poses.pop(); |
91 new_function = function(length) { | 93 new_function = function(length) { |
92 var obj = new PseudoArray(); | 94 var obj = new PseudoArray(); |
93 obj.length = length; | 95 obj.length = length; |
94 return obj; | 96 return obj; |
95 }; | 97 }; |
96 the_prototype = PseudoArray.prototype; | 98 the_prototype = PseudoArray.prototype; |
97 push_function = function(array, elt) { | 99 push_function = function(array, elt) { |
98 array[array.length] = elt; | 100 array[array.length] = elt; |
99 array.length++; | 101 array.length++; |
(...skipping 205 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
305 // Test http://b/issue?id=1202711 | 307 // Test http://b/issue?id=1202711 |
306 arr = [0]; | 308 arr = [0]; |
307 arr.length = 2; | 309 arr.length = 2; |
308 Array.prototype[1] = 1; | 310 Array.prototype[1] = 1; |
309 assertEquals(1, arr.pop()); | 311 assertEquals(1, arr.pop()); |
310 assertEquals(0, arr.pop()); | 312 assertEquals(0, arr.pop()); |
311 Array.prototype[1] = undefined; | 313 Array.prototype[1] = undefined; |
312 | 314 |
313 // Test http://code.google.com/p/chromium/issues/detail?id=21860 | 315 // Test http://code.google.com/p/chromium/issues/detail?id=21860 |
314 Array.prototype.push.apply([], [1].splice(0, -(-1 % 5))); | 316 Array.prototype.push.apply([], [1].splice(0, -(-1 % 5))); |
317 | |
318 */ | |
OLD | NEW |