(use srfi-4-utils test) (define elt< (lambda (i ai j bj) (< ai bj))) (define elt> (lambda (i ai j bj) (> ai bj))) (test-group "srfi-4-utils" (test "f64vector-merge!" (f64vector 1 2 3 4 5) (f64vector-merge! elt< (f64vector 1 3 5 2 4) 0 3 5 (make-f64vector 5 0.) 0)) (test "f64vector-merge!" (f64vector 1 2 3 4 5 6) (f64vector-merge! elt< (f64vector 1 3 5 2 4 6) 0 3 6 (make-f64vector 6 0.) 0)) (test "f64vector-merge!" (f64vector 1 2 3 4 5) (f64vector-merge! elt< (f64vector 1 3 2 4 5) 0 2 5 (make-f64vector 5 0.) 0)) (test "f64vector-merge!" (f64vector 1 2 3 4 5 6) (f64vector-merge! elt< (f64vector 1 3 2 4 5 6) 0 2 6 (make-f64vector 6 0.) 0)) (test "f64vector-merge-sort!" (f64vector 1 2 3 4 5 6 7 8 9 10 11 12) (f64vector-merge-sort! elt< (f64vector 9 1 3 2 5 8 7 6 11 10 12 4))) (test "f64vector-merge-sort!" (f64vector 1 2 3 4 5 6 7) (f64vector-merge-sort! elt< (f64vector 3 7 5 1 4 2 6))) (test "f64vector-merge-sort!" (f64vector 7 6 5 4 3 2 1) (f64vector-merge-sort! elt> (f64vector 3 7 5 1 4 2 6))) )