aboutsummaryrefslogtreecommitdiff
path: root/rules/test_common
diff options
context:
space:
mode:
authorSam Delmerico <delmerico@google.com>2022-10-31 17:25:58 -0400
committerSam Delmerico <delmerico@google.com>2022-11-10 16:44:04 -0500
commit9355ba0d3afef9ca9d485d8cf5b2c2be1448e93c (patch)
tree297fb31390e7af788f09a7f9724b070bcb1cbe64 /rules/test_common
parent7df84a40851d891f3fa718f9def8d5cd6b1d6d3b (diff)
downloadbazel-9355ba0d3afef9ca9d485d8cf5b2c2be1448e93c.tar.gz
add unit tests for invalid clang-tidy checks
Bug: 195029134 Test: b test //build/bazel/rules/cc:clang_tidy_tests Change-Id: I8baed3faf14e0b71ecdc640fc259c51d8332f594
Diffstat (limited to 'rules/test_common')
-rw-r--r--rules/test_common/rules.bzl31
1 files changed, 31 insertions, 0 deletions
diff --git a/rules/test_common/rules.bzl b/rules/test_common/rules.bzl
new file mode 100644
index 00000000..5b9b8228
--- /dev/null
+++ b/rules/test_common/rules.bzl
@@ -0,0 +1,31 @@
+"""
+Copyright (C) 2022 The Android Open Source Project
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+"""
+
+load("@bazel_skylib//lib:unittest.bzl", "analysistest", "asserts")
+
+def _rule_failure_impl(ctx):
+ env = analysistest.begin(ctx)
+ asserts.expect_failure(env, ctx.attr.failure_message)
+ return analysistest.end(env)
+
+expect_failure_test = analysistest.make(
+ impl = _rule_failure_impl,
+ expect_failure = True,
+ attrs = {
+ "failure_message": attr.string(),
+ },
+ doc = "This test checks that a rule fails with the expected failure_message",
+)