Some checks failed
Test, Build, and Deploy / test-build-deploy (push) Failing after 51s
49 lines
1.2 KiB
Plaintext
49 lines
1.2 KiB
Plaintext
; Tests for APL ⎕ system functions.
|
|
|
|
(define mkrv (fn (arr) (get arr :ravel)))
|
|
(define mksh (fn (arr) (get arr :shape)))
|
|
|
|
(apl-test "⎕IO returns 1" (mkrv (apl-quad-io)) (list 1))
|
|
|
|
(apl-test "⎕ML returns 1" (mkrv (apl-quad-ml)) (list 1))
|
|
|
|
(apl-test "⎕FR returns 1248" (mkrv (apl-quad-fr)) (list 1248))
|
|
|
|
(apl-test "⎕TS shape is 7" (mksh (apl-quad-ts)) (list 7))
|
|
|
|
(apl-test "⎕TS year is 1970 default" (first (mkrv (apl-quad-ts))) 1970)
|
|
|
|
(apl-test "⎕FMT scalar 42" (apl-quad-fmt (apl-scalar 42)) "42")
|
|
|
|
(apl-test "⎕FMT scalar negative" (apl-quad-fmt (apl-scalar -7)) "-7")
|
|
|
|
(apl-test
|
|
"⎕FMT empty vector"
|
|
(apl-quad-fmt (make-array (list 0) (list)))
|
|
"")
|
|
|
|
(apl-test
|
|
"⎕FMT singleton vector"
|
|
(apl-quad-fmt (make-array (list 1) (list 42)))
|
|
"42")
|
|
|
|
(apl-test
|
|
"⎕FMT vector"
|
|
(apl-quad-fmt (make-array (list 5) (list 1 2 3 4 5)))
|
|
"1 2 3 4 5")
|
|
|
|
(apl-test
|
|
"⎕FMT matrix 2x3"
|
|
(apl-quad-fmt (make-array (list 2 3) (list 1 2 3 4 5 6)))
|
|
"1 2 3\n4 5 6\n")
|
|
|
|
(apl-test
|
|
"⎕← (print) returns its arg"
|
|
(mkrv (apl-quad-print (apl-scalar 99)))
|
|
(list 99))
|
|
|
|
(apl-test
|
|
"⎕← preserves shape"
|
|
(mksh (apl-quad-print (make-array (list 3) (list 1 2 3))))
|
|
(list 3))
|