aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/test/aedifex/command/deploy.lux
diff options
context:
space:
mode:
authorEduardo Julian2020-12-10 22:29:32 -0400
committerEduardo Julian2020-12-10 22:29:32 -0400
commit9af671a34728b35c48bff2ba163c371dc5084946 (patch)
treeec35f32b8f0cabec702708e0e3cc4462b587c752 /stdlib/source/test/aedifex/command/deploy.lux
parentd747aada2d6df6538d0a88d70169f3757aef50af (diff)
Render XML to text in an indented form for human readability.
Diffstat (limited to 'stdlib/source/test/aedifex/command/deploy.lux')
-rw-r--r--stdlib/source/test/aedifex/command/deploy.lux34
1 files changed, 21 insertions, 13 deletions
diff --git a/stdlib/source/test/aedifex/command/deploy.lux b/stdlib/source/test/aedifex/command/deploy.lux
index 773069322..eafd1f968 100644
--- a/stdlib/source/test/aedifex/command/deploy.lux
+++ b/stdlib/source/test/aedifex/command/deploy.lux
@@ -9,7 +9,9 @@
[concurrency
["." promise (#+ Promise)]]
[security
- ["!" capability]]]
+ ["!" capability]]
+ [parser
+ ["." environment (#+ Environment)]]]
[data
["." maybe]
["." binary]
@@ -26,7 +28,8 @@
[math
["." random (#+ Random)]]
[world
- ["." file (#+ Path File)]]]
+ ["." file (#+ Path File)]
+ ["." program (#+ Program)]]]
[program
[compositor
["." export]]]
@@ -66,17 +69,19 @@
(file.get-file promise.monad fs (format head (\ fs separator) head ".lux")))]
(recur tail)))))
-(def: (execute! repository fs identity artifact profile)
- (-> (Repository Promise) (file.System Promise)
+(def: (execute! program repository fs identity artifact profile)
+ (-> (Program Promise) (Repository Promise) (file.System Promise)
Identity Artifact ///.Profile
(Promise (Try Text)))
- (do ///action.monad
- [#let [console (@version.echo "")]
- _ (..make-sources! fs (get@ #///.sources profile))
- _ (: (Promise (Try Path))
- (file.make-directories promise.monad fs (///local.repository fs)))
- _ (/.do! console repository fs identity artifact profile)]
- (!.use (\ console read-line) [])))
+ (do promise.monad
+ [home (\ program home [])]
+ (do ///action.monad
+ [#let [console (@version.echo "")]
+ _ (..make-sources! fs (get@ #///.sources profile))
+ _ (: (Promise (Try Path))
+ (file.make-directories promise.monad fs (///local.repository fs home)))
+ _ (/.do! console repository fs identity artifact profile)]
+ (!.use (\ console read-line) []))))
(def: #export test
Test
@@ -91,12 +96,15 @@
@profile.random)
identity @repository.identity
+ home (random.ascii/alpha 5)
+ working-directory (random.ascii/alpha 5)
#let [repository (///repository.mock (@repository.simulation identity)
@repository.empty)
- fs (file.mock (\ file.default separator))]]
+ fs (file.mock (\ file.default separator))
+ program (program.async (program.mock environment.empty home working-directory))]]
(wrap (do {! promise.monad}
[verdict (do {! ///action.monad}
- [logging (..execute! repository fs identity artifact profile)
+ [logging (..execute! program repository fs identity artifact profile)
expected-library (|> profile
(get@ #///.sources)
set.to-list