summaryrefslogtreecommitdiffstats
path: root/tests/010/sort.tl
diff options
context:
space:
mode:
Diffstat (limited to 'tests/010/sort.tl')
-rw-r--r--tests/010/sort.tl22
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/010/sort.tl b/tests/010/sort.tl
index 1fd48531..1fcc0c2d 100644
--- a/tests/010/sort.tl
+++ b/tests/010/sort.tl
@@ -21,3 +21,25 @@
(sort slist) list
(sort list (fun greater)) (reverse list)
(sort slist (fun greater)) (reverse list)))
+
+(test (ssort ()) nil)
+
+(let* ((list (conses '(1 2 3 4 5 6 7 8)))
+ (sp (uniq [mapcar ssort (perm list (len list))])))
+ (mvtest (len sp) 1
+ (car sp) list))
+
+(test (ssort #()) #())
+
+(let* ((vec (conses #(1 2 3 4 5 6 7 8)))
+ (sp (uniq [mapcar ssort (perm vec (len vec))])))
+ (mvtest (len sp) 1
+ (car sp) vec))
+
+(let* ((list (range* 0 1000))
+ (slist (shuffle list)))
+ (mvtest
+ (ssort list) list
+ (ssort slist) list
+ (ssort list (fun greater)) (reverse list)
+ (ssort slist (fun greater)) (reverse list)))