queue-suite

Fri Aug 29 13:43:42Z 2025

Creative Commons LicenseCreative Commons LicenseCreative Commons License

This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License

Table of contents
  1. test-letqueue: pass
  2. test-cons-cdr: pass
  3. test-empty-car: pass

Tests summary

scheme code
((ran 3) (failed 0))

1. test-letqueue: pass

scheme code
(define (test-letqueue _)
  (⊦= 2 (cadr '(1 2)))
  (letqueue
    ((q '()) (w '(a)) (e '(a b)) (r '(a b c)) (t '(a b c d)))
    (⊦= '(0 ()) q)
    (⊨ (fds-queue-empty? q))
    (⊦= '(1 (a)) w)
    (⊭ (fds-queue-empty? w))
    (⊦= '(2 (a) b) e)
    (⊭ (fds-queue-empty? e))
    (⊦= '(3 (a) c b) r)
    (⊭ (fds-queue-empty? r))
    (⊦= '(4 (a) d c b) t)
    (⊭ (fds-queue-empty? t))))
scheme code
((eta 0.0) (memory #(6291456 953720 1048576)) (stdout "") (stderr ""))

2. test-cons-cdr: pass

scheme code
(define (test-cons-cdr _)
  (letqueue
    ((q '()))
    (⊦= '(0 ()) q)
    (set! q (fds-queue-cons 'a q))
    (⊦= '(1 (a)) q)
    (⊭ (fds-queue-empty? q))
    (⊦= 'a (fds-queue-car q))
    (set! q (fds-queue-cons 'b q))
    (⊦= '(2 (a) b) q)
    (⊭ (fds-queue-empty? q))
    (⊦= 'a (fds-queue-car q))
    (set! q (fds-queue-cons 'c q))
    (⊦= '(3 (a) c b) q)
    (⊭ (fds-queue-empty? q))
    (⊦= 'a (fds-queue-car q))
    (set! q (fds-queue-cdr q))
    (⊦= '(2 (b c)) q)
    (⊭ (fds-queue-empty? q))
    (⊦= 'b (fds-queue-car q))
    (set! q (fds-queue-cdr q))
    (⊦= '(1 (c)) q)
    (⊭ (fds-queue-empty? q))
    (⊦= 'c (fds-queue-car q))
    (set! q (fds-queue-cdr q))
    (⊦= '(0 ()) q)
    (⊨ (fds-queue-empty? q))))
scheme code
((eta 0.0) (memory #(6291456 953936 1048576)) (stdout "") (stderr ""))

3. test-empty-car: pass

scheme code
(define (test-empty-car _)
  (letqueue
    ((q '()))
    (⊦⧳ ((exn)) (fds-queue-car q))
    (⊦⧳ ((exn)) (fds-queue-cdr q))))
scheme code
((eta 0.0) (memory #(6291456 960184 1048576)) (stdout "") (stderr ""))