summaryrefslogtreecommitdiff
path: root/shell
diff options
context:
space:
mode:
authorPaul Cristian Sarbu <paul.cristian.sarbu@huawei.com>2024-08-05 17:32:13 +0200
committerPaul Cristian Sarbu <paul.cristian.sarbu@huawei.com>2024-08-05 17:32:13 +0200
commitcca709ec12606c2e59169bcd9728665342895a1a (patch)
tree11ed0c475304d127a5d3e264d496c209d6e50620 /shell
parent0b8ebc6d074e5d9399839108a9210a66a992345b (diff)
parentd1a594af5bfb190fe625c400e700cc6096f7787b (diff)
downloadrules-cc-cca709ec12606c2e59169bcd9728665342895a1a.tar.gz
Merge commit 'd1a594af5bfb190fe625c400e700cc6096f7787b' into HEAD
Diffstat (limited to 'shell')
-rw-r--r--shell/test/EXPRESSIONS14
-rw-r--r--shell/test/RULES11
2 files changed, 23 insertions, 2 deletions
diff --git a/shell/test/EXPRESSIONS b/shell/test/EXPRESSIONS
index fee558a..b58bb49 100644
--- a/shell/test/EXPRESSIONS
+++ b/shell/test/EXPRESSIONS
@@ -6,6 +6,7 @@
, "name"
, "test.sh"
, "keep"
+ , "keep-dirs"
, "runner"
, "deps-fieldname"
, "deps-transition"
@@ -243,6 +244,16 @@
]
}
]
+ , [ "out_dirs"
+ , { "type": "foreach"
+ , "var": "dir_path"
+ , "range": {"type": "var", "name": "keep-dirs"}
+ , "body":
+ { "type": "join"
+ , "$1": ["work/", {"type": "var", "name": "dir_path"}]
+ }
+ }
+ ]
, [ "inputs"
, { "type": "map_union"
, "$1":
@@ -292,6 +303,7 @@
, "then":
{ "type": "ACTION"
, "outs": {"type": "var", "name": "outs"}
+ , "out_dirs": {"type": "var", "name": "out_dirs"}
, "inputs": {"type": "var", "name": "inputs"}
, "cmd": {"type": "var", "name": "cmd"}
, "env": {"type": "var", "name": "test_env"}
@@ -307,6 +319,7 @@
, "else":
{ "type": "ACTION"
, "outs": {"type": "var", "name": "outs"}
+ , "out_dirs": {"type": "var", "name": "out_dirs"}
, "inputs": {"type": "var", "name": "inputs"}
, "cmd": {"type": "var", "name": "cmd"}
, "env": {"type": "var", "name": "test_env"}
@@ -336,6 +349,7 @@
, "name"
, "test.sh"
, "keep"
+ , "keep-dirs"
, "runner"
, "deps-fieldname"
, "deps-transition"
diff --git a/shell/test/RULES b/shell/test/RULES
index d9d8587..a808575 100644
--- a/shell/test/RULES
+++ b/shell/test/RULES
@@ -28,7 +28,7 @@
, "script":
{ "doc": ["Shell test, given by a test script"]
, "target_fields": ["deps", "test"]
- , "string_fields": ["keep", "name"]
+ , "string_fields": ["keep", "keep-dirs", "name"]
, "config_vars":
[ "ARCH"
, "HOST_ARCH"
@@ -67,6 +67,11 @@
, "the test might generate that should be kept as part of the output."
, "This might be useful for further analysis of the test"
]
+ , "keep-dirs":
+ [ "List of names (relative to the test working directory) of directories"
+ , "that the test might generate that should be kept as part of the"
+ , "output. This might be useful for further analysis of the test"
+ ]
, "deps":
[ "Any targets that should be staged (with artifacts and runfiles) into"
, "the tests working directory"
@@ -122,7 +127,8 @@
, " generating test reports."
, "stdout/stderr: Any output the invocation of the test binary produced on"
, " the respective file descriptor"
- , "work: In this directory, all the files specified to \"keep\" are staged"
+ , "work: In this directory, all the files specified to \"keep\" and"
+ , " \"keep-dirs\" are staged"
, "time-start/time-stop: The time (decimally coded) in seconds since the"
, " epoch when the test invocation started and ended."
, "pwd: the directory in which the test was carried out"
@@ -176,6 +182,7 @@
}
]
, ["keep", {"type": "FIELD", "name": "keep"}]
+ , ["keep-dirs", {"type": "FIELD", "name": "keep-dirs"}]
, ["runner", {"type": "FIELD", "name": "runner"}]
, ["deps-fieldname", "deps"]
, [ "deps-transition"