Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(85)

Side by Side Diff: test/mjsunit/array-sort.js

Issue 6062002: Merge 6006:6095 from bleeding_edge to experimental/gc branch. (Closed) Base URL: http://v8.googlecode.com/svn/branches/experimental/gc/
Patch Set: Created 9 years, 12 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « test/mjsunit/array-slice.js ('k') | test/mjsunit/compiler/regress-intoverflow.js » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2008 the V8 project authors. All rights reserved. 1 // Copyright 2010 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
11 // with the distribution. 11 // with the distribution.
(...skipping 341 matching lines...) Expand 10 before | Expand all | Expand 10 after
353 assertEquals(undefined, x[1000], name + "undefined1000"); 353 assertEquals(undefined, x[1000], name + "undefined1000");
354 assertTrue(x.hasOwnProperty(2000), name + "hasundefined2000"); 354 assertTrue(x.hasOwnProperty(2000), name + "hasundefined2000");
355 assertEquals(undefined, x[2000], name + "undefined2000"); 355 assertEquals(undefined, x[2000], name + "undefined2000");
356 assertTrue(x.hasOwnProperty(8000), name + "hasundefined8000"); 356 assertTrue(x.hasOwnProperty(8000), name + "hasundefined8000");
357 assertEquals(undefined, x[8000], name + "undefined8000"); 357 assertEquals(undefined, x[8000], name + "undefined8000");
358 assertFalse(x.hasOwnProperty(12000), name + "has12000"); 358 assertFalse(x.hasOwnProperty(12000), name + "has12000");
359 assertEquals("XX", x[12000], name + "XX12000"); 359 assertEquals("XX", x[12000], name + "XX12000");
360 } 360 }
361 361
362 TestSpecialCasesInheritedElementSort(); 362 TestSpecialCasesInheritedElementSort();
363
364 // Test that sort calls compare function with global object as receiver,
365 // and with only elements of the array as arguments.
366 function o(v) {
367 return {__proto__: o.prototype, val: v};
368 }
369 var arr = [o(1), o(2), o(4), o(8), o(16), o(32), o(64), o(128), o(256), o(-0)];
370 var global = this;
371 function cmpTest(a, b) {
372 assertEquals(global, this);
373 assertTrue(a instanceof o);
374 assertTrue(b instanceof o);
375 return a.val - b.val;
376 }
377 arr.sort(cmpTest);
OLDNEW
« no previous file with comments | « test/mjsunit/array-slice.js ('k') | test/mjsunit/compiler/regress-intoverflow.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698