X-Git-Url: https://git.xandkar.net/?a=blobdiff_plain;f=tt.rkt;h=8ed1243af1a2687b6b3e4ce1599e6fd59642276c;hb=63afa259d1e201c8a18420a8c7ef681faf66a09f;hp=986ade173d4eb4b95ddae53c23b77e5fb4451a67;hpb=f1493e49c9c99b0ac19567fe5923a517724e1d51;p=tt.git diff --git a/tt.rkt b/tt.rkt index 986ade1..8ed1243 100644 --- a/tt.rkt +++ b/tt.rkt @@ -88,13 +88,11 @@ 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 ) <))) + (let* ([f (λ (x) (if (even? x) x #f))] + [xs (range 11)] + [actual (sort (concurrent-filter-map 10 f xs) <)] + [expected (sort ( filter-map f xs) <)]) + (check-equal? actual expected "concurrent-filter-map"))) (define (msg-print out-format odd msg) (printf @@ -135,9 +133,41 @@ [rfc3339-record:year t])]) (msg ts_epoch ts_rfc3339 nick uri text)))))) +(module+ test + (let* ([ts "2020-11-18T22:22:09-0500"] + [tab " "] + [text "Lorem ipsum"] + [nick "foo"] + [uri "bar"] + [actual (str->msg nick uri (string-join (list ts text) tab))] + [expected (msg 1605756129 ts nick uri text)]) + (check-equal? + (msg-ts_epoch actual) + (msg-ts_epoch expected) + "str->msg ts_epoch") + (check-equal? + (msg-ts_rfc3339 actual) + (msg-ts_rfc3339 expected) + "str->msg ts_rfc3339") + (check-equal? + (msg-nick actual) + (msg-nick expected) + "str->msg nick") + (check-equal? + (msg-uri actual) + (msg-uri expected) + "str->msg uri") + (check-equal? + (msg-text actual) + (msg-text expected) + "str->msg text"))) + (define (str->lines str) (string-split str (regexp "[\r\n]+"))) +(module+ test + (check-equal? (str->lines "abc\ndef\n\nghi") '("abc" "def" "ghi"))) + (define (str->msgs nick uri str) (filter-map (λ (line) (str->msg nick uri line)) (str->lines str)))