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