X-Git-Url: https://jxself.org/git/?p=8sync.git;a=blobdiff_plain;f=tests%2Ftest-agenda.scm;h=ae53e55cf6db9440950d860a3f1d1afaaf9419b6;hp=013bce7c2d2bb45c85b74a9fc146d7a228076ba3;hb=f0863bf36133288ed55eb97a3732d581be45c231;hpb=39be3a1d4f667eae7dc31b7677721692aab3a319 diff --git a/tests/test-agenda.scm b/tests/test-agenda.scm index 013bce7..ae53e55 100644 --- a/tests/test-agenda.scm +++ b/tests/test-agenda.scm @@ -30,17 +30,6 @@ (define var (@@ (8sync agenda) var))) - - -;;; Helpers -;;; ======= - -(define (speak-it) - (let ((messages '())) - (lambda* (#:optional message) - (if message (set! messages (append messages (list message)))) - messages))) - ;;; queue helpers ;;; ============= @@ -270,30 +259,26 @@ ;; the dummy test -(define speaker (speak-it)) - (define (dummy-func) - (speaker "I'm a dummy\n")) + (speak "I'm a dummy\n")) (define (run-dummy) - (speaker "I bet I can make you say you're a dummy!\n") + (speak "I bet I can make you say you're a dummy!\n") (run-it dummy-func)) -(begin - (set! speaker (speak-it)) ; reset the speaker - (start-agenda (make-agenda #:queue (make-q* run-dummy)) - #:stop-condition (true-after-n-times 2)) - (test-equal (speaker) - '("I bet I can make you say you're a dummy!\n" - "I'm a dummy\n"))) +(with-fresh-speaker + (start-agenda (make-agenda #:queue (make-q* run-dummy)) + #:stop-condition (true-after-n-times 2)) + (test-equal (get-spoken) + '("I bet I can make you say you're a dummy!\n" + "I'm a dummy\n"))) ;; should only do the first one after one round though -(begin - (set! speaker (speak-it)) ; reset the speaker - (start-agenda (make-agenda #:queue (make-q* run-dummy)) - #:stop-condition (true-after-n-times 1)) - (test-equal (speaker) - '("I bet I can make you say you're a dummy!\n"))) +(with-fresh-speaker + (start-agenda (make-agenda #:queue (make-q* run-dummy)) + #:stop-condition (true-after-n-times 1)) + (test-equal (get-spoken) + '("I bet I can make you say you're a dummy!\n"))) ;; End tests