mirror of
https://github.com/bazelbuild/bazel-skylib
synced 2024-11-25 00:39:47 +00:00
62 lines
1.8 KiB
Markdown
62 lines
1.8 KiB
Markdown
|
<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>
|
||
|
|
||
|
|