consumer_fizzbuzz_lexical_bundle_run.tri (1049B)
1 !import "source.module" !Local 2 !import "consumers.structural" S 3 !import "prelude" !Local 4 !import "io" !Local 5 root = "__ROOT__" 6 input = [1 2 3 4 5 6 7 8 9 10 11 12 13 14 15] 7 expected = [1 2 "Fizz" 4 "Buzz" "Fizz" 7 8 "Fizz" "Buzz" 11 "Fizz" 13 14 "FizzBuzz"] 8 checks work program = foldl append "" [ 9 (matchBool "empty-ok/" "empty-BAD/" (equal? (work t) t)) 10 (matchBool "one-ok/" "one-BAD/" (equal? (work [1]) [1])) 11 (matchBool "three-ok/" "three-BAD/" (equal? (work [1 2 3]) [1 2 "Fizz"])) 12 (matchBool "packed-expected/" "packed-DIFFER/" (equal? (work input) expected)) 13 (matchBool "packed-interpreter" "packed-vs-interpreter-DIFFER" 14 (equal? (work input) (resultOr (t t) (S.runConsumer program input))))] 15 main = io (onResult_ (sourceModuleLoadSelected root "scpBase" "workLexFizzBuzz") 16 (problem : putStrLn (append "worker-load-error=" problem)) 17 (work : onResult_ (sourceModuleLoadSelected root "scpBase" "authoredFizzBuzz") 18 (problem : putStrLn (append "ir-load-error=" problem)) 19 (program : putStrLn (checks work program)))) 20 main