1// Copyright (C) 2021 The Android Open Source Project
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
15package {
16    // See: http://go/android-license-faq
17    // A large-scale-change added 'default_applicable_licenses' to import
18    // all of the 'license_kinds' from "frameworks_base_license"
19    // to get the below license kinds:
20    //   SPDX-license-identifier-Apache-2.0
21    default_applicable_licenses: ["frameworks_base_license"],
22}
23
24java_library_host {
25    name: "SystemUILintChecker",
26    srcs: [
27        "src/**/*.kt",
28        "src/**/*.java",
29    ],
30    plugins: ["auto_service_plugin"],
31    libs: [
32        "auto_service_annotations",
33        "lint_api",
34    ],
35    kotlincflags: ["-Xjvm-default=all"],
36}
37
38java_test_host {
39    name: "SystemUILintCheckerTest",
40    srcs: [
41        "tests/**/*.kt",
42        "tests/**/*.java",
43    ],
44    data: [
45        ":framework",
46        ":androidx.annotation_annotation",
47    ],
48    static_libs: [
49        "SystemUILintChecker",
50        "junit",
51        "lint",
52        "lint_tests",
53    ],
54    test_options: {
55        unit_test: true,
56        tradefed_options: [
57            {
58                // lint bundles in some classes that were built with older versions
59                // of libraries, and no longer load. Since tradefed tries to load
60                // all classes in the jar to look for tests, it crashes loading them.
61                // Exclude these classes from tradefed's search.
62                name: "exclude-paths",
63                value: "org/apache",
64            },
65            {
66                name: "exclude-paths",
67                value: "META-INF",
68            },
69        ],
70    },
71}
72