consumer_registry_bundle_run.tri (1621B)
1 -- Independently imported SCP source compiler, runnable consumer and lambda. 2 !import "source.module" !Local 3 !import "io" !Local 4 !import "http" H 5 !import "prelude" !Local 6 root = "__ROOT__" 7 compare run program baseline request expected = bind (run program root request) (observed : 8 bind (baseline root request) (reference : 9 pure (and? (equal? observed reference) (equal? observed expected)))) 10 main = io (onResult_ (readFile "demos/consumers/registry/registry.scp") 11 (problem : putStrLn "read-fail") 12 (source : onResult_ (sourceModuleLoadSelected "__STORE__" "registryCompiler" "compileRouteSource") 13 (problem : putStrLn "compiler-load-fail") 14 (compile : onResult_ (sourceModuleLoadSelected "__STORE__" "registrySCP" "authored") 15 (problem : putStrLn "program-load-fail") 16 (packed : onResult_ (sourceModuleLoadSelected "__STORE__" "registrySCP" "routeRun") 17 (problem : putStrLn "runner-load-fail") 18 (run : onResult_ (sourceModuleLoadSelected "__STORE__" "registryLambda" "lambdaRoute") 19 (problem : putStrLn "lambda-load-fail") 20 (baseline : matchResult 21 (_ _ : putStrLn "compiled-source-fail") 22 (program _ : lazyBool 23 (_ : bind (compare run program baseline 24 (pair "GET" "/_arboricx/bundle/hash/abc123") 25 (H.response 200 "application/vnd.arboricx.bundle" "sample-bundle")) 26 (same : putStrLn (matchBool "registry-bundle-ok" "registry-bundle-DIFFER" same))) 27 (_ : putStrLn "program-identity-DIFFER") 28 (equal? program packed)) 29 (compile source))))))) 30 main