diff options
author | Klaus Aehlig <klaus.aehlig@huawei.com> | 2024-08-14 17:19:10 +0200 |
---|---|---|
committer | Klaus Aehlig <klaus.aehlig@huawei.com> | 2024-08-20 16:39:41 +0200 |
commit | 22534d3549a0584c889085594d7ab14cf6e8d44c (patch) | |
tree | aab2a770f0087282f6e7bc0a96862c8560612a23 | |
parent | 731716280761ced876ddd5e4dd0a6818b0b106f8 (diff) | |
download | rules-cc-22534d3549a0584c889085594d7ab14cf6e8d44c.tar.gz |
Add ["test", "suite"]
... collecting test results similar to the way "install" rules
are typically used; however in such a way that the provider "lint"
is forwarded.
-rw-r--r-- | test/RULES | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/test/RULES b/test/RULES new file mode 100644 index 0000000..9fb11e3 --- /dev/null +++ b/test/RULES @@ -0,0 +1,45 @@ +{ "suite": + { "doc": + [ "Form a compound target out of many test targets." + , "" + , "More precisely, take the runfiles of the given \"deps\", take their" + , "disjoint union and stage the result. Also propagate relevant" + , "providers." + ] + , "tainted": ["test"] + , "target_fields": ["deps"] + , "string_fields": ["stage"] + , "imports": + { "runfiles": ["", "field_runfiles"] + , "list_provider": ["", "field_list_provider"] + } + , "expression": + { "type": "let*" + , "bindings": + [ ["fieldname", "deps"] + , ["runfiles", {"type": "CALL_EXPRESSION", "name": "runfiles"}] + , [ "stage" + , { "type": "join" + , "separator": "/" + , "$1": {"type": "FIELD", "name": "stage"} + } + ] + , [ "staged results" + , { "type": "to_subdir" + , "subdir": {"type": "var", "name": "stage"} + , "$1": {"type": "var", "name": "runfiles"} + } + ] + , ["provider", "lint"] + , ["lint", {"type": "CALL_EXPRESSION", "name": "list_provider"}] + , ["lint", {"type": "nub_right", "$1": {"type": "var", "name": "lint"}}] + ] + , "body": + { "type": "RESULT" + , "artifacts": {"type": "var", "name": "staged results"} + , "runfiles": {"type": "var", "name": "staged results"} + , "provides": {"type": "env", "vars": ["lint"]} + } + } + } +} |