~ chicken-core (chicken-5) 0ef8861a0e1d3cc8e01175964d713ffd38c6efde
commit 0ef8861a0e1d3cc8e01175964d713ffd38c6efde Author: felix <felix@call-with-current-continuation.org> AuthorDate: Mon Mar 21 15:46:28 2011 +0100 Commit: felix <felix@call-with-current-continuation.org> CommitDate: Mon Mar 21 15:46:28 2011 +0100 functor tests written, but untested diff --git a/tests/functor-tests.scm b/tests/functor-tests.scm index 6cbadd2c..af279ea9 100644 --- a/tests/functor-tests.scm +++ b/tests/functor-tests.scm @@ -43,3 +43,34 @@ (define (head q) (car (queue-heads q))) (define (dequeue q) (norm (make-queue (cdr (queue-heads q)) (queue-tails q)))) ) + + +(module test-q1 = (test-queue queue1)) +(module test-q2 = (test-queue queue2)) +(module test-q3 = (test-queue queue3)) + +(import (rename test-q1 (list->queue l2q1) (queue->list q2l1))) +(import (rename test-q2 (list->queue l2q2) (queue->list q2l2))) +(import (rename test-q3 (list->queue l2q3) (queue->list q2l3))) + +(use srfi-1) +(define long-list (list-tabulate 10000 identity)) + +(print "Queue representation #1:") +(time (q2l1 (l2q1 long-list))) +(print "Queue representation #2:") +(time (q2l2 (l2q2 long-list))) +(print "Queue representation #3:") +(time (q2l3 (q2l3 long-list))) + +(module breadth = (breadth-first queue3)) + +(import breadth) + +(define (next-char lst) + (list (cons #\A lst) (cons #\B lst) (cons #\C lst))) + +(define (show n csq) + (map list->string (take csq 1))) + +(pp (show 8 (search next-char '()))) ;XXX assertTrap