(library (tests fasl) (export test-fasl) (import (ikarus) (tests framework)) (define (test x) (printf "test-fasl ~s\n" x) (let-values ([(p e) (open-bytevector-output-port)]) (fasl-write x p) (let ([bv (e)]) (let ([y (fasl-read (open-bytevector-input-port bv))]) (unless (equal? x y) (error 'test-fasl "failed/expected" y x)))))) (define (test-fasl) (test 12) (test -12) (test (greatest-fixnum)) (test (least-fixnum)) (test 0) (test #t) (test #f) (test '()) (test "Hello") (test 'hello) (test '(Hello There)) (test 3498798327498723894789237489324) (test -3498798327498723894789237489324) (test 2389478923749872389723894/23498739874892379482374) (test -2389478923749872389723894/23498739874892379482374) (test 127487384734.4) (test (make-rectangular 12 13)) (test (make-rectangular 12.0 13.0))) )