• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Copyright (C) 2023 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    default_applicable_licenses: ["Android-Apache-2.0"],
17}
18
19filegroup {
20    name: "adservices-test-utility-sources",
21    srcs: [
22        "java/**/*.java",
23    ],
24    exclude_srcs: [
25        "java/com/android/adservices/mockito/*.java",
26    ],
27    path: "java",
28    visibility: [
29        "//packages/modules/AdServices:__subpackages__",
30    ],
31}
32
33// Java classes that are used by both device-side and host-side tests
34filegroup {
35    name: "adservices-test-utility-sideless-sources",
36    srcs: [
37        "side-less/**/*.java",
38    ],
39    path: "side-less",
40    visibility: [
41        ":__pkg__",
42    ],
43}
44
45android_library {
46    name: "adservices-test-utility",
47    sdk_version: "module_current",
48    // this test util needs to be used for the RVC-specific tests
49    min_sdk_version: "30",
50    srcs: [
51        ":adservices-test-utility-sideless-sources",
52        ":adservices-test-utility-sources",
53        ":adservices-shared-sideless-flags-sources",
54        ":adservices-service-core-phflags-sources",
55        // TODO(b/345219434): should use java-defaults instead of manually including
56        // the 2 sources below
57        ":adservices-extended-mockito-rule-sources",
58        ":adservices-shared-extended-mockito-rule-sources",
59    ],
60    libs: [
61        "error_prone_annotations",
62        "framework-adservices-lib",
63        "framework-annotations-lib",
64        "framework-configinfrastructure.stubs.module_lib",
65        "junit",
66    ],
67    static_libs: [
68        "auto_value_annotations",
69        // TODO(b/338132355): Clean up dependencies for adservices-test-utility.
70        "adservices-service-core",
71        "adservices-shared-mockito-expectations", // TODO(b/338132355): should not be needed if mocker is split
72        "adservices-shared-testing",
73        "adservices-shared-flags-backend", // TODO(b/391406689): should be provided by adservices-service-core"
74        "androidx.test.runner",
75        "compatibility-device-util-axt",
76        "modules-utils-preconditions",
77        "adservices-shared-util", // For checkState method uses varargs.
78        "adservices-clients",
79        // TODO(b/345219434): remove dependency below (and/or replace it by
80        // modules-utils-extended-mockito-rule) and move it to test projects
81        // instead (as it's only needed by tests that uses the static fixture)
82        "modules-utils-testable-device-config",
83        // TODO(b/345219434): should use java-defaults instead of manually including
84        "adservices-shared-static-class-checker",
85    ],
86    apex_available: [
87        "com.android.adservices",
88        "com.android.extservices",
89    ],
90    visibility: [
91        "//packages/modules/AdServices:__subpackages__",
92        "//vendor:__subpackages__", // used by some integration tests
93    ],
94    lint: {
95        extra_check_modules: ["AdServicesTestLintChecker"],
96    },
97    plugins: ["auto_annotation_plugin"],
98}
99
100java_library_host {
101    name: "adservices-host-side-test-utility",
102    srcs: [
103        "host-side/**/*.java",
104        ":adservices-service-core-flags-constants-sources",
105        ":adservices-shared-sideless-flags-sources",
106        ":adservices-test-utility-sideless-sources",
107    ],
108    static_libs: [
109        "compatibility-host-util",
110        "adservices-shared-hostside-testing",
111    ],
112    libs: [
113        "tradefed",
114        "framework-annotations-lib",
115    ],
116}
117
118// TODO(b/338132355): remove / split / create new lib for expectations
119filegroup {
120    name: "adservices-extended-mockito-rule-sources",
121    srcs: [
122        // Non-static - interface and implementation
123        "java/com/android/adservices/mockito/AdServicesPragmaticMocker.java",
124        "java/com/android/adservices/mockito/AdServicesMockitoMocker.java",
125        // Static - interface and implementation
126        "java/com/android/adservices/mockito/AdServicesStaticMocker.java",
127        "java/com/android/adservices/mockito/AdServicesExtendedMockitoMocker.java",
128        // Job-related - interface and implementation
129        "java/com/android/adservices/mockito/AdServicesJobMocker.java",
130        // ... and implementation
131        "java/com/android/adservices/mockito/AdServicesMockitoJobMocker.java",
132        // Flags-related - interface and implementation
133        "java/com/android/adservices/mockito/AdServicesFlagsMocker.java",
134        // ... and implementation
135        "java/com/android/adservices/mockito/AdServicesMockitoFlagsMocker.java",
136    ],
137    path: "java",
138    visibility: [
139        "//packages/modules/AdServices:__subpackages__",
140    ],
141}
142
143java_defaults {
144    name: "adservices-extended-mockito-defaults",
145    srcs: [
146        ":adservices-extended-mockito-rule-sources",
147    ],
148    defaults: ["adservices-shared-extended-mockito-defaults"],
149    static_libs: [
150        "adservices-service-core",
151        "modules-utils-testable-device-config", // For TestableDeviceConfig
152    ],
153    visibility: [
154        "//packages/modules/AdServices:__subpackages__",
155    ],
156}
157