summaryrefslogtreecommitdiff
path: root/test/script/run.et
diff options
context:
space:
mode:
Diffstat (limited to 'test/script/run.et')
-rw-r--r--test/script/run.et93
1 files changed, 93 insertions, 0 deletions
diff --git a/test/script/run.et b/test/script/run.et
index 9efc0e7..b6dc1b0 100644
--- a/test/script/run.et
+++ b/test/script/run.et
@@ -135,3 +135,96 @@ test RunExternalRepo:
expect /(.*)/ from p capture done
guard (done == "run-finish")
+
+
+test RunExplicitJob:
+ node n
+ shell on n as git_init:
+ mkdir -p main
+ git -C main -c init.defaultBranch=master init -q
+ cp "${scripts.path}/explicit.yaml" main/minici.yaml
+ git -C main add minici.yaml
+ git -C main -c user.name=test -c user.email=test commit -q --allow-empty -m 'initial commit'
+
+ mkdir -p main/subdir
+
+ touch main/subdir/a
+ git -C main add subdir
+ git -C main -c user.name=test -c user.email=test commit -q -m 'commit'
+ git -C main rev-parse HEAD^{commit}
+ git -C main rev-parse HEAD^{tree}
+
+ touch main/subdir/b
+ git -C main add subdir
+ git -C main -c user.name=test -c user.email=test commit -q -m 'commit'
+ git -C main rev-parse HEAD^{tree}
+
+ rm main/subdir/a
+ rm main/subdir/b
+ touch main/subdir/c
+ git -C main add subdir
+ git -C main -c user.name=test -c user.email=test commit -q -m 'commit'
+ git -C main rev-parse HEAD^{tree}
+
+ touch main/subdir/d
+ git -C main add subdir
+ git -C main -c user.name=test -c user.email=test commit -q -m 'commit'
+ git -C main rev-parse HEAD^{tree}
+
+ expect /([0-9a-f]+)/ from git_init capture c1
+ expect /([0-9a-f]+)/ from git_init capture t1
+ expect /([0-9a-f]+)/ from git_init capture t2
+ expect /([0-9a-f]+)/ from git_init capture t3
+ expect /([0-9a-f]+)/ from git_init capture t4
+
+ local:
+ spawn on n as p args [ "./main", "run", "$c1.build" ]
+ expect_success from p of "$t1.build"
+ expect /(.*)/ from p capture done
+ guard (done == "run-finish")
+ local:
+ spawn on n as p args [ "./main", "extract", "$c1.build.out", "list" ]
+ local:
+ shell on n as s:
+ cat list
+ rm list
+ expect /a/ from s
+
+ local:
+ spawn on n as p args [ "./main", "run", "$t2.build" ]
+ expect_success from p of "$t2.build"
+ expect /(.*)/ from p capture done
+ guard (done == "run-finish")
+ local:
+ spawn on n as p args [ "./main", "extract", "$t2.build.out", "list" ]
+ local:
+ shell on n as s:
+ cat list
+ rm list
+ expect /a b/ from s
+
+ local:
+ spawn on n as p args [ "./main", "run", "HEAD^.build" ]
+ expect_success from p of "$t3.build"
+ expect /(.*)/ from p capture done
+ guard (done == "run-finish")
+ local:
+ spawn on n as p args [ "./main", "extract", "HEAD^.build.out", "list" ]
+ local:
+ shell on n as s:
+ cat list
+ rm list
+ expect /c/ from s
+
+ local:
+ spawn on n as p args [ "./main", "run", "HEAD.build" ]
+ expect_success from p of "$t4.build"
+ expect /(.*)/ from p capture done
+ guard (done == "run-finish")
+ local:
+ spawn on n as p args [ "./main", "extract", "HEAD.build.out", "list" ]
+ local:
+ shell on n as s:
+ cat list
+ rm list
+ expect /c d/ from s