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-service-core-phflags-sources", 54 // TODO(b/345219434): should use java-defaults instead of manually including 55 // the 2 sources below 56 ":adservices-extended-mockito-rule-sources", 57 ":adservices-shared-extended-mockito-rule-sources", 58 ], 59 libs: [ 60 "error_prone_annotations", 61 "framework-adservices-lib", 62 "framework-annotations-lib", 63 "framework-configinfrastructure.stubs.module_lib", 64 "junit", 65 ], 66 static_libs: [ 67 "auto_value_annotations", 68 // TODO(b/338132355): Clean up dependencies for adservices-test-utility. 69 "adservices-service-core", 70 "adservices-shared-mockito-expectations", // TODO(b/338132355): should not be needed if mocker is split 71 "adservices-shared-testing", 72 "androidx.test.runner", 73 "compatibility-device-util-axt", 74 "modules-utils-preconditions", 75 "adservices-shared-util", // For checkState method uses varargs. 76 "adservices-clients", 77 // TODO(b/345219434): remove dependency below (and/or replace it by 78 // modules-utils-extended-mockito-rule) and move it to test projects 79 // instead (as it's only needed by tests that uses the static fixture) 80 "modules-utils-testable-device-config", 81 // TODO(b/345219434): should use java-defaults instead of manually including 82 "adservices-shared-static-class-checker", 83 ], 84 apex_available: [ 85 "com.android.adservices", 86 "com.android.extservices", 87 ], 88 visibility: [ 89 "//packages/modules/AdServices:__subpackages__", 90 "//vendor:__subpackages__", // used by some integration tests 91 ], 92 lint: { 93 extra_check_modules: ["AdServicesTestLintChecker"], 94 }, 95 plugins: ["auto_annotation_plugin"], 96} 97 98java_library_host { 99 name: "adservices-host-side-test-utility", 100 srcs: [ 101 "host-side/**/*.java", 102 ":adservices-service-core-flags-constants-sources", 103 ":adservices-test-utility-sideless-sources", 104 ], 105 static_libs: [ 106 "compatibility-host-util", 107 "adservices-shared-hostside-testing", 108 ], 109 libs: [ 110 "tradefed", 111 "framework-annotations-lib", 112 ], 113} 114 115// TODO(b/338132355): remove / split / create new lib for expectations 116filegroup { 117 name: "adservices-extended-mockito-rule-sources", 118 srcs: [ 119 // Non-static - interface and implementation 120 "java/com/android/adservices/mockito/AdServicesPragmaticMocker.java", 121 "java/com/android/adservices/mockito/AdServicesMockitoMocker.java", 122 // Static - interface and implementation 123 "java/com/android/adservices/mockito/AdServicesStaticMocker.java", 124 "java/com/android/adservices/mockito/AdServicesExtendedMockitoMocker.java", 125 // Job-related - interface and implementation 126 "java/com/android/adservices/mockito/AdServicesJobMocker.java", 127 // ... and implementation 128 "java/com/android/adservices/mockito/AdServicesMockitoJobMocker.java", 129 // Flags-related - interface and implementation 130 "java/com/android/adservices/mockito/AdServicesFlagsMocker.java", 131 "java/com/android/adservices/mockito/AdServicesDebugFlagsMocker.java", 132 // ... and implementation 133 "java/com/android/adservices/mockito/AdServicesMockitoFlagsMocker.java", 134 "java/com/android/adservices/mockito/AdServicesMockitoDebugFlagsMocker.java", 135 ], 136 path: "java", 137 visibility: [ 138 "//packages/modules/AdServices:__subpackages__", 139 ], 140} 141 142java_defaults { 143 name: "adservices-extended-mockito-defaults", 144 srcs: [ 145 ":adservices-extended-mockito-rule-sources", 146 ], 147 defaults: ["adservices-shared-extended-mockito-defaults"], 148 static_libs: [ 149 "adservices-service-core", 150 "modules-utils-testable-device-config", // For TestableDeviceConfig 151 ], 152 visibility: [ 153 "//packages/modules/AdServices:__subpackages__", 154 ], 155} 156