From dad4504d0e1c23bcd1de18eaa5d6615a228f9658 Mon Sep 17 00:00:00 2001 From: Siraaj Khandkar Date: Wed, 18 Nov 2020 08:27:40 -0500 Subject: [PATCH] Test concurrent-filter-map --- tt.rkt | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/tt.rkt b/tt.rkt index c606b2e..b691fd0 100644 --- a/tt.rkt +++ b/tt.rkt @@ -50,6 +50,7 @@ (struct feed (nick uri)) (define (concurrent-filter-map num_workers f xs) + ; TODO preserve order of elements OR communicate that reorder is expected ; TODO switch from mailboxes to channels (define (make-worker id f) (define parent (current-thread)) @@ -83,6 +84,15 @@ (for-each thread-wait threads) results) +(module+ test + (define n-workers 10) + (define given (list + (λ (x) (if (even? x) x #f)) + (range 11))) + (check-equal? + (sort (apply concurrent-filter-map (cons n-workers given)) <) + (sort (apply filter-map given ) <))) + (define (msg-print out-format odd msg) (printf (match out-format -- 2.20.1