mirror of
https://github.com/ashinn/chibi-scheme.git
synced 2025-05-22 07:09:18 +02:00
31 lines
905 B
Scheme
31 lines
905 B
Scheme
(define-library (pingala prosody-test)
|
|
(export run-tests)
|
|
(import (scheme base) (scheme write) (scheme process-context)
|
|
(pingala prosody))
|
|
(begin
|
|
;; test utils
|
|
(define failed? #f)
|
|
(define (fail expr expected res)
|
|
(set! failed? #t)
|
|
(display "FAIL: ")
|
|
(write expr)
|
|
(display ": expected: ")
|
|
(write expected)
|
|
(display " but got: ")
|
|
(write res)
|
|
(newline))
|
|
(define (test-exit) (exit (not failed?)))
|
|
(define-syntax test
|
|
(syntax-rules ()
|
|
((test expected expr)
|
|
(let ((res expr))
|
|
(if (not (equal? res expected))
|
|
(fail 'expr expected res))))))
|
|
;; tests
|
|
(define (run-tests)
|
|
(test "ma" (ganas 0))
|
|
(test "bha" (ganas 6))
|
|
(test "L-L-H" (ganas-pattern "sa"))
|
|
(test "L-L-H" (ganas-pattern 3))
|
|
(test "H-L-L" (ganas-pattern "bha"))
|
|
(test-exit))))
|