summaryrefslogtreecommitdiffstats
path: root/js/src/tests/non262/TypedArray/sort_sorted.js
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--js/src/tests/non262/TypedArray/sort_sorted.js30
1 files changed, 30 insertions, 0 deletions
diff --git a/js/src/tests/non262/TypedArray/sort_sorted.js b/js/src/tests/non262/TypedArray/sort_sorted.js
new file mode 100644
index 0000000000..cb55ec3399
--- /dev/null
+++ b/js/src/tests/non262/TypedArray/sort_sorted.js
@@ -0,0 +1,30 @@
+function SortedAscending(length) {
+ var array = new Int32Array(length);
+ for (var i = 0; i < length; ++i)
+ array[i] = i + 1;
+
+ array.sort((x, y) => x - y);
+
+ for (var i = 0; i < length; ++i)
+ assertEq(i + 1, array[i], `Mismatch at index=${i}, length=${length}`);
+}
+
+for (var i = 0; i < 256; ++i)
+ SortedAscending(i);
+
+function SortedDescending(length) {
+ var array = new Int32Array(length);
+ for (var i = 0; i < length; ++i)
+ array[i] = length - i;
+
+ array.sort((x, y) => x - y);
+
+ for (var i = 0; i < length; ++i)
+ assertEq(i + 1, array[i], `Mismatch at index=${i}, length=${length}`);
+}
+
+for (var i = 0; i < 256; ++i)
+ SortedDescending(i);
+
+if (typeof reportCompare === "function")
+ reportCompare(true, true);