ikarus/src/run-tests.ss

34 lines
871 B
Scheme
Executable File

#!/usr/bin/env ikarus --r6rs-script
(import (ikarus)
(tests reader)
(tests bytevectors)
(tests strings)
(tests numbers)
(tests bignums)
(tests bignum-to-flonum)
(tests string-to-number))
(define (test-exact-integer-sqrt)
(define (f i j inc)
(when (< i j)
(let-values ([(s r) (exact-integer-sqrt i)])
(unless (and (= (+ (* s s) r) i)
(< i (* (+ s 1) (+ s 1))))
(error 'exact-integer-sqrt "wrong result for ~s" i))
(f (+ i inc) j inc))))
(f 0 10000 1)
(f 0 536870911 10000)
(f 0 536870911000 536870911)
(printf "[exact-integer-sqrt] Happy Happy Joy Joy\n"))
(test-reader)
(test-bytevectors)
(test-strings)
(test-exact-integer-sqrt)
(test-bignum-to-flonum)
(test-string-to-number)
(test-div-and-mod)
(test-bignums)
(printf "Happy Happy Joy Joy\n")