diff options
Diffstat (limited to 'docs/analysis_test_doc.md')
-rwxr-xr-x | docs/analysis_test_doc.md | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/docs/analysis_test_doc.md b/docs/analysis_test_doc.md new file mode 100755 index 0000000..817be66 --- /dev/null +++ b/docs/analysis_test_doc.md @@ -0,0 +1,61 @@ +<a name="#analysis_test"></a> +## analysis_test + +<pre> +analysis_test(<a href="#analysis_test-name">name</a>, <a href="#analysis_test-targets">targets</a>) +</pre> + +Test rule checking that other targets can be successfully analyzed. + + This rule essentially verifies that all targets under `targets` would + generate no errors when analyzed with `bazel build [targets] --nobuild`. + Action success/failure for the targets and their transitive dependencies + are not verified. An analysis test simply ensures that each target in the transitive + dependencies propagate providers appropriately and register actions for their outputs + appropriately. + + NOTE: If the targets fail to analyze, instead of the analysis_test failing, the analysis_test + will fail to build. Ideally, it would instead result in a test failure. This is a current + infrastructure limitation that may be fixed in the future. + + Typical usage: + + load("@bazel_skylib//rules:analysis_test.bzl", "analysis_test") + analysis_test( + name = "my_analysis_test", + targets = [ + "//some/package:rule", + ], + ) + + Args: + name: The name of the test rule. + targets: A list of targets to ensure build. + +### Attributes + +<table class="params-table"> + <colgroup> + <col class="col-param" /> + <col class="col-description" /> + </colgroup> + <tbody> + <tr id="analysis_test-name"> + <td><code>name</code></td> + <td> + <a href="https://bazel.build/docs/build-ref.html#name">Name</a>; required + <p> + A unique name for this target. + </p> + </td> + </tr> + <tr id="analysis_test-targets"> + <td><code>targets</code></td> + <td> + <a href="https://bazel.build/docs/build-ref.html#labels">List of labels</a>; required + </td> + </tr> + </tbody> +</table> + + |