aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/program/aedifex/command/test.lux
diff options
context:
space:
mode:
Diffstat (limited to 'stdlib/source/program/aedifex/command/test.lux')
-rw-r--r--stdlib/source/program/aedifex/command/test.lux44
1 files changed, 25 insertions, 19 deletions
diff --git a/stdlib/source/program/aedifex/command/test.lux b/stdlib/source/program/aedifex/command/test.lux
index 3df3e0724..e6d36bfd8 100644
--- a/stdlib/source/program/aedifex/command/test.lux
+++ b/stdlib/source/program/aedifex/command/test.lux
@@ -4,8 +4,12 @@
[abstract
[monad {"+" do}]]
[control
+ [try {"+" Try}]
[concurrency
["[0]" async {"+" Async} ("[1]#[0]" monad)]]]
+ [data
+ [collection
+ ["[0]" dictionary]]]
[macro
["^" pattern]]
[math
@@ -41,32 +45,34 @@
(has ///.#program (the ///.#test profile) profile))]
(if (i.= shell.normal build_exit)
(do !
- [_ (console.write_line ..start console)
+ [_ (is (Async (Try Any))
+ (console.write_line ..start console))
.let [host_dependencies (//build.host_dependencies fs home resolution)
- [test_command test_parameters] (case compiler
- {//build.#JVM dependency}
- (|> program
- (///runtime.for (the ///.#java profile))
- (//build.with_jvm_class_path host_dependencies))
+ [command_environment test_command test_parameters] (case compiler
+ {//build.#JVM dependency}
+ (|> program
+ (///runtime.for (the ///.#java profile))
+ (//build.with_jvm_class_path host_dependencies))
- (^.template [<tag> <runtime>]
- [{<tag> artifact}
- (///runtime.for (the <runtime> profile)
- program)])
- ([//build.#JS ///.#js]
- [//build.#Python ///.#python]
- [//build.#Lua ///.#lua]
- [//build.#Ruby ///.#ruby]))]
- process (# shell execute [environment
+ (^.template [<tag> <runtime>]
+ [{<tag> artifact}
+ (///runtime.for (the <runtime> profile)
+ program)])
+ ([//build.#JS ///.#js]
+ [//build.#Python ///.#python]
+ [//build.#Lua ///.#lua]
+ [//build.#Ruby ///.#ruby]))]
+ process (# shell execute [(dictionary.composite command_environment environment)
working_directory
test_command
test_parameters])
_ (//build.log_output! console process)
_ (//build.log_error! console process)
exit (# process await [])
- _ (console.write_line (if (i.= shell.normal exit)
- ..success
- ..failure)
- console)]
+ _ (is (Async (Try Any))
+ (console.write_line (if (i.= shell.normal exit)
+ ..success
+ ..failure)
+ console))]
(in [exit []]))
(in [build_exit []])))))