diff options
author | Klaus Aehlig <klaus.aehlig@huawei.com> | 2025-05-12 15:34:08 +0200 |
---|---|---|
committer | Klaus Aehlig <klaus.aehlig@huawei.com> | 2025-05-12 15:34:08 +0200 |
commit | 7a2fb9f639a61cf7b7d7e45c7c4cea845e7528c6 (patch) | |
tree | 368d91c0a7ecdc720b94f47d0accd7ce03dfb2b6 | |
parent | 096c785d299fc094b1ca991aba965635937073b0 (diff) | |
download | rules-cc-7a2fb9f639a61cf7b7d7e45c7c4cea845e7528c6.tar.gz |
Update documentation
-rw-r--r-- | README.md | 17 |
1 files changed, 17 insertions, 0 deletions
@@ -588,6 +588,23 @@ Form a compound target out of many test targets. | `"stage"` | The logical location this test suite is to be placed. Individual entries will be joined with `"/"`. | | `"deps"` | The targets that suite is composed of. | +### Rule `["test", "matrix"]` + +Given a group of tests, build them in a variety of configurations. + + The configuration variable TEST_MATRIX is expected to be a map with each value being a map itself. Sequentially for each key, all possible values of the associated map are tried and staged to the appropriate key. Thus, the tests in `"deps"` are built in an exponential number of configurations. + + If TEST_MATRIX is unset, `{}` will be assumed, i.e., all the `"deps"` will be built precisely once, in the current configuration. In this way, the `"matrix"` rule can be used instead of the `"suite"` rule to allow user-defined configuration matrices, dispatching over parameters for dependencies (e.g., the toolchain). + +| Field | Description | +| ----- | ----------- | +| `"stage"` | The logical location this test suite is to be placed. Individual entries will be joined with `"/"`. | +| `"deps"` | The targets that suite is composed of. | + +| Config variable | Description | +| --------------- | ----------- | +| `"TEST_MATRIX"` | Map describing the dimensions of the matrix to run the tests for. Keys are config variables. The value for each key has to be a map mapping the stage name to the corresponding value for that config variable. | + ### Rule `["lint", "targets"]` Run a given linter on the lint information provided by the given targets. |