Reviewers: Mads Ager,

Description:
Testing that sorting behaves reasonably with a bad comparison function.

Please review this at http://codereview.chromium.org/7137

Affected files:
   M     test/mjsunit/array-sort.js


Index: test/mjsunit/array-sort.js
===================================================================
--- test/mjsunit/array-sort.js  (revision 493)
+++ test/mjsunit/array-sort.js  (working copy)
@@ -134,9 +134,21 @@

  // Test array sorting with undefined elemeents in the array.
  function TestArraySortingWithUndefined() {
-  var a = [3, void 0, 2];
+  var a = [ 3, void 0, 2 ];
    a.sort();
-  assertArrayEquals([ 2, 3, void 0], a);
+  assertArrayEquals([ 2, 3, void 0 ], a);
  }

  TestArraySortingWithUndefined();
+
+// Test that sorting using an unsound comparison function still gives a
+// sane result, i.e. it terminates without error and retains the elements
+// in the array.
+function TestArraySortingWithUnsoundComparisonFunction() {
+  var a = [ 3, void 0, 2 ];
+  a.sort(function(x, y) { return 1; });
+  a.sort();
+  assertArrayEquals([ 2, 3, void 0 ], a);
+}
+
+TestArraySortingWithUnsoundComparisonFunction();



--~--~---------~--~----~------------~-------~--~----~
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
-~----------~----~----~----~------~----~------~--~---

Reply via email to