xref: /aosp_15_r20/external/bazelbuild-rules_android/test/rules/android_library_extensibility/test.bzl (revision 9e965d6fece27a77de5377433c2f7e6999b8cc0b)
1# Copyright 2023 The Bazel Authors. All rights reserved.
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7#    http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14
15"""Tests for the extensibility functionality of android_library."""
16
17load(
18    "//test/utils:lib.bzl",
19    "asserts",
20    "unittest",
21)
22load(
23    ":custom_android_library.bzl",
24    "CustomProviderInfo",
25)
26
27def custom_android_library_test_impl(ctx):
28    env = unittest.begin(ctx)
29
30    # Assert that the custom provider exists
31    asserts.true(env, CustomProviderInfo in ctx.attr.lib)
32    asserts.equals(env, ctx.attr.lib[CustomProviderInfo].key, "test_key")
33
34    return unittest.end(env)
35
36custom_android_library_test = unittest.make(
37    impl = custom_android_library_test_impl,
38    attrs = {
39        "lib": attr.label(providers = [CustomProviderInfo]),
40    },
41)
42