1*333d2b36SAndroid Build Coastguard Worker// Copyright (C) 2019 The Android Open Source Project 2*333d2b36SAndroid Build Coastguard Worker// 3*333d2b36SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License"); 4*333d2b36SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License. 5*333d2b36SAndroid Build Coastguard Worker// You may obtain a copy of the License at 6*333d2b36SAndroid Build Coastguard Worker// 7*333d2b36SAndroid Build Coastguard Worker// http://www.apache.org/licenses/LICENSE-2.0 8*333d2b36SAndroid Build Coastguard Worker// 9*333d2b36SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software 10*333d2b36SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS, 11*333d2b36SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*333d2b36SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and 13*333d2b36SAndroid Build Coastguard Worker// limitations under the License. 14*333d2b36SAndroid Build Coastguard Worker 15*333d2b36SAndroid Build Coastguard Workerpackage sdk 16*333d2b36SAndroid Build Coastguard Worker 17*333d2b36SAndroid Build Coastguard Workerimport ( 18*333d2b36SAndroid Build Coastguard Worker "fmt" 19*333d2b36SAndroid Build Coastguard Worker "testing" 20*333d2b36SAndroid Build Coastguard Worker 21*333d2b36SAndroid Build Coastguard Worker "android/soong/android" 22*333d2b36SAndroid Build Coastguard Worker "android/soong/dexpreopt" 23*333d2b36SAndroid Build Coastguard Worker "android/soong/java" 24*333d2b36SAndroid Build Coastguard Worker) 25*333d2b36SAndroid Build Coastguard Worker 26*333d2b36SAndroid Build Coastguard Workervar prepareForSdkTestWithJava = android.GroupFixturePreparers( 27*333d2b36SAndroid Build Coastguard Worker java.PrepareForTestWithJavaBuildComponents, 28*333d2b36SAndroid Build Coastguard Worker PrepareForTestWithSdkBuildComponents, 29*333d2b36SAndroid Build Coastguard Worker dexpreopt.PrepareForTestWithFakeDex2oatd, 30*333d2b36SAndroid Build Coastguard Worker 31*333d2b36SAndroid Build Coastguard Worker // Ensure that all source paths are provided. This helps ensure that the snapshot generation is 32*333d2b36SAndroid Build Coastguard Worker // consistent and all files referenced from the snapshot's Android.bp file have actually been 33*333d2b36SAndroid Build Coastguard Worker // copied into the snapshot. 34*333d2b36SAndroid Build Coastguard Worker android.PrepareForTestDisallowNonExistentPaths, 35*333d2b36SAndroid Build Coastguard Worker 36*333d2b36SAndroid Build Coastguard Worker // Files needs by most of the tests. 37*333d2b36SAndroid Build Coastguard Worker android.MockFS{ 38*333d2b36SAndroid Build Coastguard Worker "Test.java": nil, 39*333d2b36SAndroid Build Coastguard Worker "art-profile": nil, 40*333d2b36SAndroid Build Coastguard Worker }.AddToFixture(), 41*333d2b36SAndroid Build Coastguard Worker) 42*333d2b36SAndroid Build Coastguard Worker 43*333d2b36SAndroid Build Coastguard Workervar prepareForSdkTestWithJavaSdkLibrary = android.GroupFixturePreparers( 44*333d2b36SAndroid Build Coastguard Worker prepareForSdkTestWithJava, 45*333d2b36SAndroid Build Coastguard Worker java.PrepareForTestWithJavaDefaultModules, 46*333d2b36SAndroid Build Coastguard Worker java.PrepareForTestWithJavaSdkLibraryFiles, 47*333d2b36SAndroid Build Coastguard Worker java.FixtureWithLastReleaseApis("myjavalib"), 48*333d2b36SAndroid Build Coastguard Worker android.PrepareForTestWithBuildFlag("RELEASE_HIDDEN_API_EXPORTABLE_STUBS", "true"), 49*333d2b36SAndroid Build Coastguard Worker) 50*333d2b36SAndroid Build Coastguard Worker 51*333d2b36SAndroid Build Coastguard Worker// Contains tests for SDK members provided by the java package. 52*333d2b36SAndroid Build Coastguard Worker 53*333d2b36SAndroid Build Coastguard Workerfunc TestSdkDependsOnSourceEvenWhenPrebuiltPreferred(t *testing.T) { 54*333d2b36SAndroid Build Coastguard Worker result := android.GroupFixturePreparers(prepareForSdkTestWithJava).RunTestWithBp(t, ` 55*333d2b36SAndroid Build Coastguard Worker sdk { 56*333d2b36SAndroid Build Coastguard Worker name: "mysdk", 57*333d2b36SAndroid Build Coastguard Worker java_header_libs: ["sdkmember"], 58*333d2b36SAndroid Build Coastguard Worker } 59*333d2b36SAndroid Build Coastguard Worker 60*333d2b36SAndroid Build Coastguard Worker java_library { 61*333d2b36SAndroid Build Coastguard Worker name: "sdkmember", 62*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 63*333d2b36SAndroid Build Coastguard Worker system_modules: "none", 64*333d2b36SAndroid Build Coastguard Worker sdk_version: "none", 65*333d2b36SAndroid Build Coastguard Worker } 66*333d2b36SAndroid Build Coastguard Worker `) 67*333d2b36SAndroid Build Coastguard Worker 68*333d2b36SAndroid Build Coastguard Worker // Make sure that the mysdk module depends on "sdkmember" and not "prebuilt_sdkmember". 69*333d2b36SAndroid Build Coastguard Worker sdkChecker := func(t *testing.T, result *android.TestResult) { 70*333d2b36SAndroid Build Coastguard Worker java.CheckModuleDependencies(t, result.TestContext, "mysdk", "android_common", []string{"sdkmember"}) 71*333d2b36SAndroid Build Coastguard Worker } 72*333d2b36SAndroid Build Coastguard Worker 73*333d2b36SAndroid Build Coastguard Worker CheckSnapshot(t, result, "mysdk", "", 74*333d2b36SAndroid Build Coastguard Worker snapshotTestChecker(checkSnapshotWithSourcePreferred, sdkChecker), 75*333d2b36SAndroid Build Coastguard Worker snapshotTestChecker(checkSnapshotPreferredWithSource, sdkChecker), 76*333d2b36SAndroid Build Coastguard Worker ) 77*333d2b36SAndroid Build Coastguard Worker} 78*333d2b36SAndroid Build Coastguard Worker 79*333d2b36SAndroid Build Coastguard Workerfunc TestSnapshotWithJavaHeaderLibrary(t *testing.T) { 80*333d2b36SAndroid Build Coastguard Worker result := android.GroupFixturePreparers( 81*333d2b36SAndroid Build Coastguard Worker prepareForSdkTestWithJava, 82*333d2b36SAndroid Build Coastguard Worker android.FixtureAddFile("aidl/foo/bar/Test.aidl", nil), 83*333d2b36SAndroid Build Coastguard Worker ).RunTestWithBp(t, ` 84*333d2b36SAndroid Build Coastguard Worker sdk { 85*333d2b36SAndroid Build Coastguard Worker name: "mysdk", 86*333d2b36SAndroid Build Coastguard Worker java_header_libs: ["myjavalib"], 87*333d2b36SAndroid Build Coastguard Worker } 88*333d2b36SAndroid Build Coastguard Worker 89*333d2b36SAndroid Build Coastguard Worker java_library { 90*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 91*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 92*333d2b36SAndroid Build Coastguard Worker aidl: { 93*333d2b36SAndroid Build Coastguard Worker export_include_dirs: ["aidl"], 94*333d2b36SAndroid Build Coastguard Worker }, 95*333d2b36SAndroid Build Coastguard Worker system_modules: "none", 96*333d2b36SAndroid Build Coastguard Worker sdk_version: "none", 97*333d2b36SAndroid Build Coastguard Worker compile_dex: true, 98*333d2b36SAndroid Build Coastguard Worker host_supported: true, 99*333d2b36SAndroid Build Coastguard Worker permitted_packages: ["pkg.myjavalib"], 100*333d2b36SAndroid Build Coastguard Worker } 101*333d2b36SAndroid Build Coastguard Worker `) 102*333d2b36SAndroid Build Coastguard Worker 103*333d2b36SAndroid Build Coastguard Worker CheckSnapshot(t, result, "mysdk", "", 104*333d2b36SAndroid Build Coastguard Worker checkAndroidBpContents(` 105*333d2b36SAndroid Build Coastguard Worker// This is auto-generated. DO NOT EDIT. 106*333d2b36SAndroid Build Coastguard Worker 107*333d2b36SAndroid Build Coastguard Workerapex_contributions_defaults { 108*333d2b36SAndroid Build Coastguard Worker name: "mysdk.contributions", 109*333d2b36SAndroid Build Coastguard Worker contents: ["prebuilt_myjavalib"], 110*333d2b36SAndroid Build Coastguard Worker} 111*333d2b36SAndroid Build Coastguard Worker 112*333d2b36SAndroid Build Coastguard Workerjava_import { 113*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 114*333d2b36SAndroid Build Coastguard Worker prefer: false, 115*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 116*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:platform"], 117*333d2b36SAndroid Build Coastguard Worker jars: ["java/myjavalib.jar"], 118*333d2b36SAndroid Build Coastguard Worker permitted_packages: ["pkg.myjavalib"], 119*333d2b36SAndroid Build Coastguard Worker} 120*333d2b36SAndroid Build Coastguard Worker`), 121*333d2b36SAndroid Build Coastguard Worker checkAllCopyRules(` 122*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib/android_common/turbine-combined/myjavalib.jar -> java/myjavalib.jar 123*333d2b36SAndroid Build Coastguard Workeraidl/foo/bar/Test.aidl -> aidl/aidl/foo/bar/Test.aidl 124*333d2b36SAndroid Build Coastguard Worker`), 125*333d2b36SAndroid Build Coastguard Worker ) 126*333d2b36SAndroid Build Coastguard Worker} 127*333d2b36SAndroid Build Coastguard Worker 128*333d2b36SAndroid Build Coastguard Workerfunc TestHostSnapshotWithJavaHeaderLibrary(t *testing.T) { 129*333d2b36SAndroid Build Coastguard Worker result := android.GroupFixturePreparers( 130*333d2b36SAndroid Build Coastguard Worker prepareForSdkTestWithJava, 131*333d2b36SAndroid Build Coastguard Worker android.FixtureAddFile("aidl/foo/bar/Test.aidl", nil), 132*333d2b36SAndroid Build Coastguard Worker ).RunTestWithBp(t, ` 133*333d2b36SAndroid Build Coastguard Worker sdk { 134*333d2b36SAndroid Build Coastguard Worker name: "mysdk", 135*333d2b36SAndroid Build Coastguard Worker device_supported: false, 136*333d2b36SAndroid Build Coastguard Worker host_supported: true, 137*333d2b36SAndroid Build Coastguard Worker java_header_libs: ["myjavalib"], 138*333d2b36SAndroid Build Coastguard Worker } 139*333d2b36SAndroid Build Coastguard Worker 140*333d2b36SAndroid Build Coastguard Worker java_library { 141*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 142*333d2b36SAndroid Build Coastguard Worker device_supported: false, 143*333d2b36SAndroid Build Coastguard Worker host_supported: true, 144*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 145*333d2b36SAndroid Build Coastguard Worker aidl: { 146*333d2b36SAndroid Build Coastguard Worker export_include_dirs: ["aidl"], 147*333d2b36SAndroid Build Coastguard Worker }, 148*333d2b36SAndroid Build Coastguard Worker system_modules: "none", 149*333d2b36SAndroid Build Coastguard Worker sdk_version: "none", 150*333d2b36SAndroid Build Coastguard Worker compile_dex: true, 151*333d2b36SAndroid Build Coastguard Worker } 152*333d2b36SAndroid Build Coastguard Worker `) 153*333d2b36SAndroid Build Coastguard Worker 154*333d2b36SAndroid Build Coastguard Worker CheckSnapshot(t, result, "mysdk", "", 155*333d2b36SAndroid Build Coastguard Worker checkAndroidBpContents(` 156*333d2b36SAndroid Build Coastguard Worker// This is auto-generated. DO NOT EDIT. 157*333d2b36SAndroid Build Coastguard Worker 158*333d2b36SAndroid Build Coastguard Workerapex_contributions_defaults { 159*333d2b36SAndroid Build Coastguard Worker name: "mysdk.contributions", 160*333d2b36SAndroid Build Coastguard Worker contents: ["prebuilt_myjavalib"], 161*333d2b36SAndroid Build Coastguard Worker} 162*333d2b36SAndroid Build Coastguard Worker 163*333d2b36SAndroid Build Coastguard Workerjava_import { 164*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 165*333d2b36SAndroid Build Coastguard Worker prefer: false, 166*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 167*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:platform"], 168*333d2b36SAndroid Build Coastguard Worker device_supported: false, 169*333d2b36SAndroid Build Coastguard Worker host_supported: true, 170*333d2b36SAndroid Build Coastguard Worker jars: ["java/myjavalib.jar"], 171*333d2b36SAndroid Build Coastguard Worker} 172*333d2b36SAndroid Build Coastguard Worker`), 173*333d2b36SAndroid Build Coastguard Worker checkAllCopyRules(` 174*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib/linux_glibc_common/javac-header/myjavalib.jar -> java/myjavalib.jar 175*333d2b36SAndroid Build Coastguard Workeraidl/foo/bar/Test.aidl -> aidl/aidl/foo/bar/Test.aidl 176*333d2b36SAndroid Build Coastguard Worker`), 177*333d2b36SAndroid Build Coastguard Worker ) 178*333d2b36SAndroid Build Coastguard Worker} 179*333d2b36SAndroid Build Coastguard Worker 180*333d2b36SAndroid Build Coastguard Workerfunc TestDeviceAndHostSnapshotWithJavaHeaderLibrary(t *testing.T) { 181*333d2b36SAndroid Build Coastguard Worker result := android.GroupFixturePreparers(prepareForSdkTestWithJava).RunTestWithBp(t, ` 182*333d2b36SAndroid Build Coastguard Worker sdk { 183*333d2b36SAndroid Build Coastguard Worker name: "mysdk", 184*333d2b36SAndroid Build Coastguard Worker host_supported: true, 185*333d2b36SAndroid Build Coastguard Worker java_header_libs: ["myjavalib"], 186*333d2b36SAndroid Build Coastguard Worker } 187*333d2b36SAndroid Build Coastguard Worker 188*333d2b36SAndroid Build Coastguard Worker java_library { 189*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 190*333d2b36SAndroid Build Coastguard Worker host_supported: true, 191*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 192*333d2b36SAndroid Build Coastguard Worker system_modules: "none", 193*333d2b36SAndroid Build Coastguard Worker sdk_version: "none", 194*333d2b36SAndroid Build Coastguard Worker compile_dex: true, 195*333d2b36SAndroid Build Coastguard Worker } 196*333d2b36SAndroid Build Coastguard Worker `) 197*333d2b36SAndroid Build Coastguard Worker 198*333d2b36SAndroid Build Coastguard Worker CheckSnapshot(t, result, "mysdk", "", 199*333d2b36SAndroid Build Coastguard Worker checkAndroidBpContents(` 200*333d2b36SAndroid Build Coastguard Worker// This is auto-generated. DO NOT EDIT. 201*333d2b36SAndroid Build Coastguard Worker 202*333d2b36SAndroid Build Coastguard Workerapex_contributions_defaults { 203*333d2b36SAndroid Build Coastguard Worker name: "mysdk.contributions", 204*333d2b36SAndroid Build Coastguard Worker contents: ["prebuilt_myjavalib"], 205*333d2b36SAndroid Build Coastguard Worker} 206*333d2b36SAndroid Build Coastguard Worker 207*333d2b36SAndroid Build Coastguard Workerjava_import { 208*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 209*333d2b36SAndroid Build Coastguard Worker prefer: false, 210*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 211*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:platform"], 212*333d2b36SAndroid Build Coastguard Worker host_supported: true, 213*333d2b36SAndroid Build Coastguard Worker target: { 214*333d2b36SAndroid Build Coastguard Worker android: { 215*333d2b36SAndroid Build Coastguard Worker jars: ["java/android/myjavalib.jar"], 216*333d2b36SAndroid Build Coastguard Worker }, 217*333d2b36SAndroid Build Coastguard Worker linux_glibc: { 218*333d2b36SAndroid Build Coastguard Worker jars: ["java/linux_glibc/myjavalib.jar"], 219*333d2b36SAndroid Build Coastguard Worker }, 220*333d2b36SAndroid Build Coastguard Worker }, 221*333d2b36SAndroid Build Coastguard Worker} 222*333d2b36SAndroid Build Coastguard Worker`), 223*333d2b36SAndroid Build Coastguard Worker checkAllCopyRules(` 224*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib/android_common/turbine-combined/myjavalib.jar -> java/android/myjavalib.jar 225*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib/linux_glibc_common/javac-header/myjavalib.jar -> java/linux_glibc/myjavalib.jar 226*333d2b36SAndroid Build Coastguard Worker`), 227*333d2b36SAndroid Build Coastguard Worker ) 228*333d2b36SAndroid Build Coastguard Worker} 229*333d2b36SAndroid Build Coastguard Worker 230*333d2b36SAndroid Build Coastguard Workerfunc TestSnapshotWithJavaImplLibrary(t *testing.T) { 231*333d2b36SAndroid Build Coastguard Worker result := android.GroupFixturePreparers( 232*333d2b36SAndroid Build Coastguard Worker prepareForSdkTestWithJava, 233*333d2b36SAndroid Build Coastguard Worker android.FixtureAddFile("aidl/foo/bar/Test.aidl", nil), 234*333d2b36SAndroid Build Coastguard Worker android.FixtureAddFile("resource.txt", nil), 235*333d2b36SAndroid Build Coastguard Worker ).RunTestWithBp(t, ` 236*333d2b36SAndroid Build Coastguard Worker module_exports { 237*333d2b36SAndroid Build Coastguard Worker name: "myexports", 238*333d2b36SAndroid Build Coastguard Worker java_libs: ["myjavalib"], 239*333d2b36SAndroid Build Coastguard Worker } 240*333d2b36SAndroid Build Coastguard Worker 241*333d2b36SAndroid Build Coastguard Worker java_library { 242*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 243*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 244*333d2b36SAndroid Build Coastguard Worker java_resources: ["resource.txt"], 245*333d2b36SAndroid Build Coastguard Worker aidl: { 246*333d2b36SAndroid Build Coastguard Worker export_include_dirs: ["aidl"], 247*333d2b36SAndroid Build Coastguard Worker }, 248*333d2b36SAndroid Build Coastguard Worker system_modules: "none", 249*333d2b36SAndroid Build Coastguard Worker sdk_version: "none", 250*333d2b36SAndroid Build Coastguard Worker compile_dex: true, 251*333d2b36SAndroid Build Coastguard Worker host_supported: true, 252*333d2b36SAndroid Build Coastguard Worker } 253*333d2b36SAndroid Build Coastguard Worker `) 254*333d2b36SAndroid Build Coastguard Worker 255*333d2b36SAndroid Build Coastguard Worker CheckSnapshot(t, result, "myexports", "", 256*333d2b36SAndroid Build Coastguard Worker checkAndroidBpContents(` 257*333d2b36SAndroid Build Coastguard Worker// This is auto-generated. DO NOT EDIT. 258*333d2b36SAndroid Build Coastguard Worker 259*333d2b36SAndroid Build Coastguard Workerapex_contributions_defaults { 260*333d2b36SAndroid Build Coastguard Worker name: "myexports.contributions", 261*333d2b36SAndroid Build Coastguard Worker contents: ["prebuilt_myjavalib"], 262*333d2b36SAndroid Build Coastguard Worker} 263*333d2b36SAndroid Build Coastguard Worker 264*333d2b36SAndroid Build Coastguard Workerjava_import { 265*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 266*333d2b36SAndroid Build Coastguard Worker prefer: false, 267*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 268*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:platform"], 269*333d2b36SAndroid Build Coastguard Worker jars: ["java/myjavalib.jar"], 270*333d2b36SAndroid Build Coastguard Worker} 271*333d2b36SAndroid Build Coastguard Worker`), 272*333d2b36SAndroid Build Coastguard Worker checkAllCopyRules(` 273*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib/android_common/withres/myjavalib.jar -> java/myjavalib.jar 274*333d2b36SAndroid Build Coastguard Workeraidl/foo/bar/Test.aidl -> aidl/aidl/foo/bar/Test.aidl 275*333d2b36SAndroid Build Coastguard Worker`), 276*333d2b36SAndroid Build Coastguard Worker ) 277*333d2b36SAndroid Build Coastguard Worker} 278*333d2b36SAndroid Build Coastguard Worker 279*333d2b36SAndroid Build Coastguard Workerfunc TestSnapshotWithJavaBootLibrary(t *testing.T) { 280*333d2b36SAndroid Build Coastguard Worker result := android.GroupFixturePreparers( 281*333d2b36SAndroid Build Coastguard Worker prepareForSdkTestWithJava, 282*333d2b36SAndroid Build Coastguard Worker android.FixtureAddFile("aidl", nil), 283*333d2b36SAndroid Build Coastguard Worker android.FixtureAddFile("resource.txt", nil), 284*333d2b36SAndroid Build Coastguard Worker ).RunTestWithBp(t, ` 285*333d2b36SAndroid Build Coastguard Worker sdk { 286*333d2b36SAndroid Build Coastguard Worker name: "mysdk", 287*333d2b36SAndroid Build Coastguard Worker java_boot_libs: ["myjavalib"], 288*333d2b36SAndroid Build Coastguard Worker } 289*333d2b36SAndroid Build Coastguard Worker 290*333d2b36SAndroid Build Coastguard Worker java_library { 291*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 292*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 293*333d2b36SAndroid Build Coastguard Worker java_resources: ["resource.txt"], 294*333d2b36SAndroid Build Coastguard Worker // The aidl files should not be copied to the snapshot because a java_boot_libs member is not 295*333d2b36SAndroid Build Coastguard Worker // intended to be used for compiling Java, only for accessing the dex implementation jar. 296*333d2b36SAndroid Build Coastguard Worker aidl: { 297*333d2b36SAndroid Build Coastguard Worker export_include_dirs: ["aidl"], 298*333d2b36SAndroid Build Coastguard Worker }, 299*333d2b36SAndroid Build Coastguard Worker system_modules: "none", 300*333d2b36SAndroid Build Coastguard Worker sdk_version: "none", 301*333d2b36SAndroid Build Coastguard Worker compile_dex: true, 302*333d2b36SAndroid Build Coastguard Worker permitted_packages: ["pkg.myjavalib"], 303*333d2b36SAndroid Build Coastguard Worker } 304*333d2b36SAndroid Build Coastguard Worker `) 305*333d2b36SAndroid Build Coastguard Worker 306*333d2b36SAndroid Build Coastguard Worker CheckSnapshot(t, result, "mysdk", "", 307*333d2b36SAndroid Build Coastguard Worker checkAndroidBpContents(` 308*333d2b36SAndroid Build Coastguard Worker// This is auto-generated. DO NOT EDIT. 309*333d2b36SAndroid Build Coastguard Worker 310*333d2b36SAndroid Build Coastguard Workerapex_contributions_defaults { 311*333d2b36SAndroid Build Coastguard Worker name: "mysdk.contributions", 312*333d2b36SAndroid Build Coastguard Worker contents: [], 313*333d2b36SAndroid Build Coastguard Worker} 314*333d2b36SAndroid Build Coastguard Worker 315*333d2b36SAndroid Build Coastguard Workerjava_import { 316*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 317*333d2b36SAndroid Build Coastguard Worker prefer: false, 318*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 319*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:platform"], 320*333d2b36SAndroid Build Coastguard Worker jars: ["java_boot_libs/snapshot/jars/are/invalid/myjavalib.jar"], 321*333d2b36SAndroid Build Coastguard Worker permitted_packages: ["pkg.myjavalib"], 322*333d2b36SAndroid Build Coastguard Worker} 323*333d2b36SAndroid Build Coastguard Worker`), 324*333d2b36SAndroid Build Coastguard Worker checkAllCopyRules(` 325*333d2b36SAndroid Build Coastguard Worker.intermediates/mysdk/common_os/empty -> java_boot_libs/snapshot/jars/are/invalid/myjavalib.jar 326*333d2b36SAndroid Build Coastguard Worker`), 327*333d2b36SAndroid Build Coastguard Worker ) 328*333d2b36SAndroid Build Coastguard Worker} 329*333d2b36SAndroid Build Coastguard Worker 330*333d2b36SAndroid Build Coastguard Workerfunc TestSnapshotWithJavaBootLibrary_UpdatableMedia(t *testing.T) { 331*333d2b36SAndroid Build Coastguard Worker runTest := func(t *testing.T, targetBuildRelease, expectedJarPath, expectedCopyRule string) { 332*333d2b36SAndroid Build Coastguard Worker result := android.GroupFixturePreparers( 333*333d2b36SAndroid Build Coastguard Worker prepareForSdkTestWithJava, 334*333d2b36SAndroid Build Coastguard Worker android.FixtureMergeEnv(map[string]string{ 335*333d2b36SAndroid Build Coastguard Worker "SOONG_SDK_SNAPSHOT_TARGET_BUILD_RELEASE": targetBuildRelease, 336*333d2b36SAndroid Build Coastguard Worker }), 337*333d2b36SAndroid Build Coastguard Worker android.FixtureModifyProductVariables(func(variables android.FixtureProductVariables) { 338*333d2b36SAndroid Build Coastguard Worker variables.Platform_version_active_codenames = []string{"VanillaIceCream"} 339*333d2b36SAndroid Build Coastguard Worker }), 340*333d2b36SAndroid Build Coastguard Worker ).RunTestWithBp(t, ` 341*333d2b36SAndroid Build Coastguard Worker sdk { 342*333d2b36SAndroid Build Coastguard Worker name: "mysdk", 343*333d2b36SAndroid Build Coastguard Worker java_boot_libs: ["updatable-media"], 344*333d2b36SAndroid Build Coastguard Worker } 345*333d2b36SAndroid Build Coastguard Worker 346*333d2b36SAndroid Build Coastguard Worker java_library { 347*333d2b36SAndroid Build Coastguard Worker name: "updatable-media", 348*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 349*333d2b36SAndroid Build Coastguard Worker system_modules: "none", 350*333d2b36SAndroid Build Coastguard Worker sdk_version: "none", 351*333d2b36SAndroid Build Coastguard Worker compile_dex: true, 352*333d2b36SAndroid Build Coastguard Worker permitted_packages: ["pkg.media"], 353*333d2b36SAndroid Build Coastguard Worker apex_available: ["com.android.media"], 354*333d2b36SAndroid Build Coastguard Worker } 355*333d2b36SAndroid Build Coastguard Worker `) 356*333d2b36SAndroid Build Coastguard Worker 357*333d2b36SAndroid Build Coastguard Worker CheckSnapshot(t, result, "mysdk", "", 358*333d2b36SAndroid Build Coastguard Worker checkAndroidBpContents(fmt.Sprintf(` 359*333d2b36SAndroid Build Coastguard Worker// This is auto-generated. DO NOT EDIT. 360*333d2b36SAndroid Build Coastguard Worker 361*333d2b36SAndroid Build Coastguard Workerjava_import { 362*333d2b36SAndroid Build Coastguard Worker name: "updatable-media", 363*333d2b36SAndroid Build Coastguard Worker prefer: false, 364*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 365*333d2b36SAndroid Build Coastguard Worker apex_available: ["com.android.media"], 366*333d2b36SAndroid Build Coastguard Worker jars: ["%s"], 367*333d2b36SAndroid Build Coastguard Worker permitted_packages: ["pkg.media"], 368*333d2b36SAndroid Build Coastguard Worker} 369*333d2b36SAndroid Build Coastguard Worker`, expectedJarPath)), 370*333d2b36SAndroid Build Coastguard Worker checkAllCopyRules(expectedCopyRule), 371*333d2b36SAndroid Build Coastguard Worker ) 372*333d2b36SAndroid Build Coastguard Worker } 373*333d2b36SAndroid Build Coastguard Worker 374*333d2b36SAndroid Build Coastguard Worker t.Run("updatable-media in S", func(t *testing.T) { 375*333d2b36SAndroid Build Coastguard Worker runTest(t, "S", "java/updatable-media.jar", ` 376*333d2b36SAndroid Build Coastguard Worker.intermediates/updatable-media/android_common/package-check/updatable-media.jar -> java/updatable-media.jar 377*333d2b36SAndroid Build Coastguard Worker`) 378*333d2b36SAndroid Build Coastguard Worker }) 379*333d2b36SAndroid Build Coastguard Worker 380*333d2b36SAndroid Build Coastguard Worker t.Run("updatable-media in T", func(t *testing.T) { 381*333d2b36SAndroid Build Coastguard Worker runTest(t, "Tiramisu", "java_boot_libs/snapshot/jars/are/invalid/updatable-media.jar", ` 382*333d2b36SAndroid Build Coastguard Worker.intermediates/mysdk/common_os/empty -> java_boot_libs/snapshot/jars/are/invalid/updatable-media.jar 383*333d2b36SAndroid Build Coastguard Worker`) 384*333d2b36SAndroid Build Coastguard Worker }) 385*333d2b36SAndroid Build Coastguard Worker} 386*333d2b36SAndroid Build Coastguard Worker 387*333d2b36SAndroid Build Coastguard Workerfunc TestSnapshotWithJavaLibrary_MinSdkVersion(t *testing.T) { 388*333d2b36SAndroid Build Coastguard Worker runTest := func(t *testing.T, targetBuildRelease, minSdkVersion, expectedMinSdkVersion string) { 389*333d2b36SAndroid Build Coastguard Worker result := android.GroupFixturePreparers( 390*333d2b36SAndroid Build Coastguard Worker prepareForSdkTestWithJava, 391*333d2b36SAndroid Build Coastguard Worker android.FixtureModifyProductVariables(func(variables android.FixtureProductVariables) { 392*333d2b36SAndroid Build Coastguard Worker variables.Platform_version_active_codenames = []string{"S", "Tiramisu", "Unfinalized"} 393*333d2b36SAndroid Build Coastguard Worker }), 394*333d2b36SAndroid Build Coastguard Worker android.FixtureMergeEnv(map[string]string{ 395*333d2b36SAndroid Build Coastguard Worker "SOONG_SDK_SNAPSHOT_TARGET_BUILD_RELEASE": targetBuildRelease, 396*333d2b36SAndroid Build Coastguard Worker }), 397*333d2b36SAndroid Build Coastguard Worker ).RunTestWithBp(t, fmt.Sprintf(` 398*333d2b36SAndroid Build Coastguard Worker sdk { 399*333d2b36SAndroid Build Coastguard Worker name: "mysdk", 400*333d2b36SAndroid Build Coastguard Worker java_header_libs: ["mylib"], 401*333d2b36SAndroid Build Coastguard Worker } 402*333d2b36SAndroid Build Coastguard Worker 403*333d2b36SAndroid Build Coastguard Worker java_library { 404*333d2b36SAndroid Build Coastguard Worker name: "mylib", 405*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 406*333d2b36SAndroid Build Coastguard Worker system_modules: "none", 407*333d2b36SAndroid Build Coastguard Worker sdk_version: "none", 408*333d2b36SAndroid Build Coastguard Worker compile_dex: true, 409*333d2b36SAndroid Build Coastguard Worker min_sdk_version: "%s", 410*333d2b36SAndroid Build Coastguard Worker } 411*333d2b36SAndroid Build Coastguard Worker `, minSdkVersion)) 412*333d2b36SAndroid Build Coastguard Worker 413*333d2b36SAndroid Build Coastguard Worker expectedMinSdkVersionLine := "" 414*333d2b36SAndroid Build Coastguard Worker if expectedMinSdkVersion != "" { 415*333d2b36SAndroid Build Coastguard Worker expectedMinSdkVersionLine = fmt.Sprintf(" min_sdk_version: %q,\n", expectedMinSdkVersion) 416*333d2b36SAndroid Build Coastguard Worker } 417*333d2b36SAndroid Build Coastguard Worker 418*333d2b36SAndroid Build Coastguard Worker CheckSnapshot(t, result, "mysdk", "", 419*333d2b36SAndroid Build Coastguard Worker checkAndroidBpContents(fmt.Sprintf(` 420*333d2b36SAndroid Build Coastguard Worker// This is auto-generated. DO NOT EDIT. 421*333d2b36SAndroid Build Coastguard Worker 422*333d2b36SAndroid Build Coastguard Workerapex_contributions_defaults { 423*333d2b36SAndroid Build Coastguard Worker name: "mysdk.contributions", 424*333d2b36SAndroid Build Coastguard Worker contents: ["prebuilt_mylib"], 425*333d2b36SAndroid Build Coastguard Worker} 426*333d2b36SAndroid Build Coastguard Worker 427*333d2b36SAndroid Build Coastguard Workerjava_import { 428*333d2b36SAndroid Build Coastguard Worker name: "mylib", 429*333d2b36SAndroid Build Coastguard Worker prefer: false, 430*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 431*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:platform"], 432*333d2b36SAndroid Build Coastguard Worker jars: ["java/mylib.jar"], 433*333d2b36SAndroid Build Coastguard Worker%s} 434*333d2b36SAndroid Build Coastguard Worker`, expectedMinSdkVersionLine)), 435*333d2b36SAndroid Build Coastguard Worker ) 436*333d2b36SAndroid Build Coastguard Worker } 437*333d2b36SAndroid Build Coastguard Worker 438*333d2b36SAndroid Build Coastguard Worker t.Run("min_sdk_version=S in S", func(t *testing.T) { 439*333d2b36SAndroid Build Coastguard Worker // min_sdk_version was not added to java_import until Tiramisu. 440*333d2b36SAndroid Build Coastguard Worker runTest(t, "S", "S", "") 441*333d2b36SAndroid Build Coastguard Worker }) 442*333d2b36SAndroid Build Coastguard Worker 443*333d2b36SAndroid Build Coastguard Worker t.Run("min_sdk_version=S in Tiramisu", func(t *testing.T) { 444*333d2b36SAndroid Build Coastguard Worker // The canonical form of S is 31. 445*333d2b36SAndroid Build Coastguard Worker runTest(t, "Tiramisu", "S", "31") 446*333d2b36SAndroid Build Coastguard Worker }) 447*333d2b36SAndroid Build Coastguard Worker 448*333d2b36SAndroid Build Coastguard Worker t.Run("min_sdk_version=24 in Tiramisu", func(t *testing.T) { 449*333d2b36SAndroid Build Coastguard Worker // A numerical min_sdk_version is already in canonical form. 450*333d2b36SAndroid Build Coastguard Worker runTest(t, "Tiramisu", "24", "24") 451*333d2b36SAndroid Build Coastguard Worker }) 452*333d2b36SAndroid Build Coastguard Worker 453*333d2b36SAndroid Build Coastguard Worker t.Run("min_sdk_version=Unfinalized in latest", func(t *testing.T) { 454*333d2b36SAndroid Build Coastguard Worker // An unfinalized min_sdk_version has no numeric value yet. 455*333d2b36SAndroid Build Coastguard Worker runTest(t, "", "Unfinalized", "Unfinalized") 456*333d2b36SAndroid Build Coastguard Worker }) 457*333d2b36SAndroid Build Coastguard Worker} 458*333d2b36SAndroid Build Coastguard Worker 459*333d2b36SAndroid Build Coastguard Workerfunc TestSnapshotWithJavaSystemserverLibrary(t *testing.T) { 460*333d2b36SAndroid Build Coastguard Worker result := android.GroupFixturePreparers( 461*333d2b36SAndroid Build Coastguard Worker prepareForSdkTestWithJava, 462*333d2b36SAndroid Build Coastguard Worker android.FixtureAddFile("aidl", nil), 463*333d2b36SAndroid Build Coastguard Worker android.FixtureAddFile("resource.txt", nil), 464*333d2b36SAndroid Build Coastguard Worker ).RunTestWithBp(t, ` 465*333d2b36SAndroid Build Coastguard Worker module_exports { 466*333d2b36SAndroid Build Coastguard Worker name: "myexports", 467*333d2b36SAndroid Build Coastguard Worker java_systemserver_libs: ["myjavalib"], 468*333d2b36SAndroid Build Coastguard Worker } 469*333d2b36SAndroid Build Coastguard Worker 470*333d2b36SAndroid Build Coastguard Worker java_library { 471*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 472*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 473*333d2b36SAndroid Build Coastguard Worker java_resources: ["resource.txt"], 474*333d2b36SAndroid Build Coastguard Worker // The aidl files should not be copied to the snapshot because a java_systemserver_libs member 475*333d2b36SAndroid Build Coastguard Worker // is not intended to be used for compiling Java, only for accessing the dex implementation 476*333d2b36SAndroid Build Coastguard Worker // jar. 477*333d2b36SAndroid Build Coastguard Worker aidl: { 478*333d2b36SAndroid Build Coastguard Worker export_include_dirs: ["aidl"], 479*333d2b36SAndroid Build Coastguard Worker }, 480*333d2b36SAndroid Build Coastguard Worker system_modules: "none", 481*333d2b36SAndroid Build Coastguard Worker sdk_version: "none", 482*333d2b36SAndroid Build Coastguard Worker compile_dex: true, 483*333d2b36SAndroid Build Coastguard Worker permitted_packages: ["pkg.myjavalib"], 484*333d2b36SAndroid Build Coastguard Worker } 485*333d2b36SAndroid Build Coastguard Worker `) 486*333d2b36SAndroid Build Coastguard Worker 487*333d2b36SAndroid Build Coastguard Worker CheckSnapshot(t, result, "myexports", "", 488*333d2b36SAndroid Build Coastguard Worker checkAndroidBpContents(` 489*333d2b36SAndroid Build Coastguard Worker// This is auto-generated. DO NOT EDIT. 490*333d2b36SAndroid Build Coastguard Worker 491*333d2b36SAndroid Build Coastguard Workerapex_contributions_defaults { 492*333d2b36SAndroid Build Coastguard Worker name: "myexports.contributions", 493*333d2b36SAndroid Build Coastguard Worker contents: [], 494*333d2b36SAndroid Build Coastguard Worker} 495*333d2b36SAndroid Build Coastguard Worker 496*333d2b36SAndroid Build Coastguard Workerjava_import { 497*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 498*333d2b36SAndroid Build Coastguard Worker prefer: false, 499*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 500*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:platform"], 501*333d2b36SAndroid Build Coastguard Worker jars: ["java_systemserver_libs/snapshot/jars/are/invalid/myjavalib.jar"], 502*333d2b36SAndroid Build Coastguard Worker permitted_packages: ["pkg.myjavalib"], 503*333d2b36SAndroid Build Coastguard Worker} 504*333d2b36SAndroid Build Coastguard Worker`), 505*333d2b36SAndroid Build Coastguard Worker checkAllCopyRules(` 506*333d2b36SAndroid Build Coastguard Worker.intermediates/myexports/common_os/empty -> java_systemserver_libs/snapshot/jars/are/invalid/myjavalib.jar 507*333d2b36SAndroid Build Coastguard Worker`), 508*333d2b36SAndroid Build Coastguard Worker ) 509*333d2b36SAndroid Build Coastguard Worker} 510*333d2b36SAndroid Build Coastguard Worker 511*333d2b36SAndroid Build Coastguard Workerfunc TestHostSnapshotWithJavaImplLibrary(t *testing.T) { 512*333d2b36SAndroid Build Coastguard Worker result := android.GroupFixturePreparers( 513*333d2b36SAndroid Build Coastguard Worker prepareForSdkTestWithJava, 514*333d2b36SAndroid Build Coastguard Worker android.FixtureAddFile("aidl/foo/bar/Test.aidl", nil), 515*333d2b36SAndroid Build Coastguard Worker ).RunTestWithBp(t, ` 516*333d2b36SAndroid Build Coastguard Worker module_exports { 517*333d2b36SAndroid Build Coastguard Worker name: "myexports", 518*333d2b36SAndroid Build Coastguard Worker device_supported: false, 519*333d2b36SAndroid Build Coastguard Worker host_supported: true, 520*333d2b36SAndroid Build Coastguard Worker java_libs: ["myjavalib"], 521*333d2b36SAndroid Build Coastguard Worker } 522*333d2b36SAndroid Build Coastguard Worker 523*333d2b36SAndroid Build Coastguard Worker java_library { 524*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 525*333d2b36SAndroid Build Coastguard Worker device_supported: false, 526*333d2b36SAndroid Build Coastguard Worker host_supported: true, 527*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 528*333d2b36SAndroid Build Coastguard Worker aidl: { 529*333d2b36SAndroid Build Coastguard Worker export_include_dirs: ["aidl"], 530*333d2b36SAndroid Build Coastguard Worker }, 531*333d2b36SAndroid Build Coastguard Worker system_modules: "none", 532*333d2b36SAndroid Build Coastguard Worker sdk_version: "none", 533*333d2b36SAndroid Build Coastguard Worker compile_dex: true, 534*333d2b36SAndroid Build Coastguard Worker } 535*333d2b36SAndroid Build Coastguard Worker `) 536*333d2b36SAndroid Build Coastguard Worker 537*333d2b36SAndroid Build Coastguard Worker CheckSnapshot(t, result, "myexports", "", 538*333d2b36SAndroid Build Coastguard Worker checkAndroidBpContents(` 539*333d2b36SAndroid Build Coastguard Worker// This is auto-generated. DO NOT EDIT. 540*333d2b36SAndroid Build Coastguard Worker 541*333d2b36SAndroid Build Coastguard Workerapex_contributions_defaults { 542*333d2b36SAndroid Build Coastguard Worker name: "myexports.contributions", 543*333d2b36SAndroid Build Coastguard Worker contents: ["prebuilt_myjavalib"], 544*333d2b36SAndroid Build Coastguard Worker} 545*333d2b36SAndroid Build Coastguard Worker 546*333d2b36SAndroid Build Coastguard Workerjava_import { 547*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 548*333d2b36SAndroid Build Coastguard Worker prefer: false, 549*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 550*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:platform"], 551*333d2b36SAndroid Build Coastguard Worker device_supported: false, 552*333d2b36SAndroid Build Coastguard Worker host_supported: true, 553*333d2b36SAndroid Build Coastguard Worker jars: ["java/myjavalib.jar"], 554*333d2b36SAndroid Build Coastguard Worker} 555*333d2b36SAndroid Build Coastguard Worker`), 556*333d2b36SAndroid Build Coastguard Worker checkAllCopyRules(` 557*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib/linux_glibc_common/javac/myjavalib.jar -> java/myjavalib.jar 558*333d2b36SAndroid Build Coastguard Workeraidl/foo/bar/Test.aidl -> aidl/aidl/foo/bar/Test.aidl 559*333d2b36SAndroid Build Coastguard Worker`), 560*333d2b36SAndroid Build Coastguard Worker ) 561*333d2b36SAndroid Build Coastguard Worker} 562*333d2b36SAndroid Build Coastguard Worker 563*333d2b36SAndroid Build Coastguard Workerfunc TestSnapshotWithJavaTest(t *testing.T) { 564*333d2b36SAndroid Build Coastguard Worker result := android.GroupFixturePreparers(prepareForSdkTestWithJava).RunTestWithBp(t, ` 565*333d2b36SAndroid Build Coastguard Worker module_exports { 566*333d2b36SAndroid Build Coastguard Worker name: "myexports", 567*333d2b36SAndroid Build Coastguard Worker java_tests: ["myjavatests"], 568*333d2b36SAndroid Build Coastguard Worker } 569*333d2b36SAndroid Build Coastguard Worker 570*333d2b36SAndroid Build Coastguard Worker java_test { 571*333d2b36SAndroid Build Coastguard Worker name: "myjavatests", 572*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 573*333d2b36SAndroid Build Coastguard Worker system_modules: "none", 574*333d2b36SAndroid Build Coastguard Worker sdk_version: "none", 575*333d2b36SAndroid Build Coastguard Worker compile_dex: true, 576*333d2b36SAndroid Build Coastguard Worker host_supported: true, 577*333d2b36SAndroid Build Coastguard Worker } 578*333d2b36SAndroid Build Coastguard Worker `) 579*333d2b36SAndroid Build Coastguard Worker 580*333d2b36SAndroid Build Coastguard Worker CheckSnapshot(t, result, "myexports", "", 581*333d2b36SAndroid Build Coastguard Worker checkAndroidBpContents(` 582*333d2b36SAndroid Build Coastguard Worker// This is auto-generated. DO NOT EDIT. 583*333d2b36SAndroid Build Coastguard Worker 584*333d2b36SAndroid Build Coastguard Workerapex_contributions_defaults { 585*333d2b36SAndroid Build Coastguard Worker name: "myexports.contributions", 586*333d2b36SAndroid Build Coastguard Worker contents: ["prebuilt_myjavatests"], 587*333d2b36SAndroid Build Coastguard Worker} 588*333d2b36SAndroid Build Coastguard Worker 589*333d2b36SAndroid Build Coastguard Workerjava_test_import { 590*333d2b36SAndroid Build Coastguard Worker name: "myjavatests", 591*333d2b36SAndroid Build Coastguard Worker prefer: false, 592*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 593*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:platform"], 594*333d2b36SAndroid Build Coastguard Worker jars: ["java/myjavatests.jar"], 595*333d2b36SAndroid Build Coastguard Worker test_config: "java/myjavatests-AndroidTest.xml", 596*333d2b36SAndroid Build Coastguard Worker} 597*333d2b36SAndroid Build Coastguard Worker`), 598*333d2b36SAndroid Build Coastguard Worker checkAllCopyRules(` 599*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavatests/android_common/javac/myjavatests.jar -> java/myjavatests.jar 600*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavatests/android_common/myjavatests.config -> java/myjavatests-AndroidTest.xml 601*333d2b36SAndroid Build Coastguard Worker`), 602*333d2b36SAndroid Build Coastguard Worker ) 603*333d2b36SAndroid Build Coastguard Worker} 604*333d2b36SAndroid Build Coastguard Worker 605*333d2b36SAndroid Build Coastguard Workerfunc TestHostSnapshotWithJavaTest(t *testing.T) { 606*333d2b36SAndroid Build Coastguard Worker result := android.GroupFixturePreparers(prepareForSdkTestWithJava).RunTestWithBp(t, ` 607*333d2b36SAndroid Build Coastguard Worker module_exports { 608*333d2b36SAndroid Build Coastguard Worker name: "myexports", 609*333d2b36SAndroid Build Coastguard Worker device_supported: false, 610*333d2b36SAndroid Build Coastguard Worker host_supported: true, 611*333d2b36SAndroid Build Coastguard Worker java_tests: ["myjavatests"], 612*333d2b36SAndroid Build Coastguard Worker } 613*333d2b36SAndroid Build Coastguard Worker 614*333d2b36SAndroid Build Coastguard Worker java_test { 615*333d2b36SAndroid Build Coastguard Worker name: "myjavatests", 616*333d2b36SAndroid Build Coastguard Worker device_supported: false, 617*333d2b36SAndroid Build Coastguard Worker host_supported: true, 618*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 619*333d2b36SAndroid Build Coastguard Worker system_modules: "none", 620*333d2b36SAndroid Build Coastguard Worker sdk_version: "none", 621*333d2b36SAndroid Build Coastguard Worker compile_dex: true, 622*333d2b36SAndroid Build Coastguard Worker } 623*333d2b36SAndroid Build Coastguard Worker `) 624*333d2b36SAndroid Build Coastguard Worker 625*333d2b36SAndroid Build Coastguard Worker CheckSnapshot(t, result, "myexports", "", 626*333d2b36SAndroid Build Coastguard Worker checkAndroidBpContents(` 627*333d2b36SAndroid Build Coastguard Worker// This is auto-generated. DO NOT EDIT. 628*333d2b36SAndroid Build Coastguard Worker 629*333d2b36SAndroid Build Coastguard Workerapex_contributions_defaults { 630*333d2b36SAndroid Build Coastguard Worker name: "myexports.contributions", 631*333d2b36SAndroid Build Coastguard Worker contents: ["prebuilt_myjavatests"], 632*333d2b36SAndroid Build Coastguard Worker} 633*333d2b36SAndroid Build Coastguard Worker 634*333d2b36SAndroid Build Coastguard Workerjava_test_import { 635*333d2b36SAndroid Build Coastguard Worker name: "myjavatests", 636*333d2b36SAndroid Build Coastguard Worker prefer: false, 637*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 638*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:platform"], 639*333d2b36SAndroid Build Coastguard Worker device_supported: false, 640*333d2b36SAndroid Build Coastguard Worker host_supported: true, 641*333d2b36SAndroid Build Coastguard Worker jars: ["java/myjavatests.jar"], 642*333d2b36SAndroid Build Coastguard Worker test_config: "java/myjavatests-AndroidTest.xml", 643*333d2b36SAndroid Build Coastguard Worker} 644*333d2b36SAndroid Build Coastguard Worker`), 645*333d2b36SAndroid Build Coastguard Worker checkAllCopyRules(` 646*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavatests/linux_glibc_common/javac/myjavatests.jar -> java/myjavatests.jar 647*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavatests/linux_glibc_common/myjavatests.config -> java/myjavatests-AndroidTest.xml 648*333d2b36SAndroid Build Coastguard Worker`), 649*333d2b36SAndroid Build Coastguard Worker ) 650*333d2b36SAndroid Build Coastguard Worker} 651*333d2b36SAndroid Build Coastguard Worker 652*333d2b36SAndroid Build Coastguard Workerfunc TestSnapshotWithJavaSystemModules(t *testing.T) { 653*333d2b36SAndroid Build Coastguard Worker result := android.GroupFixturePreparers( 654*333d2b36SAndroid Build Coastguard Worker prepareForSdkTestWithJava, 655*333d2b36SAndroid Build Coastguard Worker java.PrepareForTestWithJavaDefaultModules, 656*333d2b36SAndroid Build Coastguard Worker java.PrepareForTestWithJavaSdkLibraryFiles, 657*333d2b36SAndroid Build Coastguard Worker java.FixtureWithPrebuiltApisAndExtensions(map[string][]string{ 658*333d2b36SAndroid Build Coastguard Worker "31": {"myjavalib"}, 659*333d2b36SAndroid Build Coastguard Worker "32": {"myjavalib"}, 660*333d2b36SAndroid Build Coastguard Worker "current": {"myjavalib"}, 661*333d2b36SAndroid Build Coastguard Worker }, map[string][]string{ 662*333d2b36SAndroid Build Coastguard Worker "1": {"myjavalib"}, 663*333d2b36SAndroid Build Coastguard Worker "2": {"myjavalib"}, 664*333d2b36SAndroid Build Coastguard Worker }), 665*333d2b36SAndroid Build Coastguard Worker android.PrepareForTestWithBuildFlag("RELEASE_HIDDEN_API_EXPORTABLE_STUBS", "true"), 666*333d2b36SAndroid Build Coastguard Worker ).RunTestWithBp(t, ` 667*333d2b36SAndroid Build Coastguard Worker sdk { 668*333d2b36SAndroid Build Coastguard Worker name: "mysdk", 669*333d2b36SAndroid Build Coastguard Worker java_header_libs: ["exported-system-module"], 670*333d2b36SAndroid Build Coastguard Worker java_sdk_libs: ["myjavalib"], 671*333d2b36SAndroid Build Coastguard Worker java_system_modules: ["my-system-modules"], 672*333d2b36SAndroid Build Coastguard Worker } 673*333d2b36SAndroid Build Coastguard Worker 674*333d2b36SAndroid Build Coastguard Worker java_sdk_library { 675*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 676*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:anyapex"], 677*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 678*333d2b36SAndroid Build Coastguard Worker sdk_version: "current", 679*333d2b36SAndroid Build Coastguard Worker shared_library: false, 680*333d2b36SAndroid Build Coastguard Worker public: { 681*333d2b36SAndroid Build Coastguard Worker enabled: true, 682*333d2b36SAndroid Build Coastguard Worker }, 683*333d2b36SAndroid Build Coastguard Worker system: { 684*333d2b36SAndroid Build Coastguard Worker enabled: true, 685*333d2b36SAndroid Build Coastguard Worker }, 686*333d2b36SAndroid Build Coastguard Worker module_lib: { 687*333d2b36SAndroid Build Coastguard Worker enabled: true, 688*333d2b36SAndroid Build Coastguard Worker }, 689*333d2b36SAndroid Build Coastguard Worker } 690*333d2b36SAndroid Build Coastguard Worker 691*333d2b36SAndroid Build Coastguard Worker java_system_modules { 692*333d2b36SAndroid Build Coastguard Worker name: "my-system-modules", 693*333d2b36SAndroid Build Coastguard Worker libs: ["system-module", "exported-system-module", "myjavalib.stubs"], 694*333d2b36SAndroid Build Coastguard Worker } 695*333d2b36SAndroid Build Coastguard Worker 696*333d2b36SAndroid Build Coastguard Worker java_library { 697*333d2b36SAndroid Build Coastguard Worker name: "system-module", 698*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 699*333d2b36SAndroid Build Coastguard Worker sdk_version: "none", 700*333d2b36SAndroid Build Coastguard Worker system_modules: "none", 701*333d2b36SAndroid Build Coastguard Worker } 702*333d2b36SAndroid Build Coastguard Worker 703*333d2b36SAndroid Build Coastguard Worker java_library { 704*333d2b36SAndroid Build Coastguard Worker name: "exported-system-module", 705*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 706*333d2b36SAndroid Build Coastguard Worker sdk_version: "none", 707*333d2b36SAndroid Build Coastguard Worker system_modules: "none", 708*333d2b36SAndroid Build Coastguard Worker } 709*333d2b36SAndroid Build Coastguard Worker `) 710*333d2b36SAndroid Build Coastguard Worker 711*333d2b36SAndroid Build Coastguard Worker CheckSnapshot(t, result, "mysdk", "", 712*333d2b36SAndroid Build Coastguard Worker checkAndroidBpContents(` 713*333d2b36SAndroid Build Coastguard Worker// This is auto-generated. DO NOT EDIT. 714*333d2b36SAndroid Build Coastguard Worker 715*333d2b36SAndroid Build Coastguard Workerapex_contributions_defaults { 716*333d2b36SAndroid Build Coastguard Worker name: "mysdk.contributions", 717*333d2b36SAndroid Build Coastguard Worker contents: [ 718*333d2b36SAndroid Build Coastguard Worker "prebuilt_exported-system-module", 719*333d2b36SAndroid Build Coastguard Worker "prebuilt_myjavalib", 720*333d2b36SAndroid Build Coastguard Worker "prebuilt_my-system-modules", 721*333d2b36SAndroid Build Coastguard Worker ], 722*333d2b36SAndroid Build Coastguard Worker} 723*333d2b36SAndroid Build Coastguard Worker 724*333d2b36SAndroid Build Coastguard Workerjava_import { 725*333d2b36SAndroid Build Coastguard Worker name: "exported-system-module", 726*333d2b36SAndroid Build Coastguard Worker prefer: false, 727*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 728*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:platform"], 729*333d2b36SAndroid Build Coastguard Worker jars: ["java/exported-system-module.jar"], 730*333d2b36SAndroid Build Coastguard Worker} 731*333d2b36SAndroid Build Coastguard Worker 732*333d2b36SAndroid Build Coastguard Workerjava_import { 733*333d2b36SAndroid Build Coastguard Worker name: "mysdk_system-module", 734*333d2b36SAndroid Build Coastguard Worker prefer: false, 735*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:private"], 736*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:platform"], 737*333d2b36SAndroid Build Coastguard Worker jars: ["java/system-module.jar"], 738*333d2b36SAndroid Build Coastguard Worker} 739*333d2b36SAndroid Build Coastguard Worker 740*333d2b36SAndroid Build Coastguard Workerjava_sdk_library_import { 741*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 742*333d2b36SAndroid Build Coastguard Worker prefer: false, 743*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 744*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:anyapex"], 745*333d2b36SAndroid Build Coastguard Worker shared_library: false, 746*333d2b36SAndroid Build Coastguard Worker public: { 747*333d2b36SAndroid Build Coastguard Worker jars: ["sdk_library/public/myjavalib-stubs.jar"], 748*333d2b36SAndroid Build Coastguard Worker stub_srcs: ["sdk_library/public/myjavalib_stub_sources"], 749*333d2b36SAndroid Build Coastguard Worker current_api: "sdk_library/public/myjavalib.txt", 750*333d2b36SAndroid Build Coastguard Worker removed_api: "sdk_library/public/myjavalib-removed.txt", 751*333d2b36SAndroid Build Coastguard Worker sdk_version: "current", 752*333d2b36SAndroid Build Coastguard Worker }, 753*333d2b36SAndroid Build Coastguard Worker system: { 754*333d2b36SAndroid Build Coastguard Worker jars: ["sdk_library/system/myjavalib-stubs.jar"], 755*333d2b36SAndroid Build Coastguard Worker stub_srcs: ["sdk_library/system/myjavalib_stub_sources"], 756*333d2b36SAndroid Build Coastguard Worker current_api: "sdk_library/system/myjavalib.txt", 757*333d2b36SAndroid Build Coastguard Worker removed_api: "sdk_library/system/myjavalib-removed.txt", 758*333d2b36SAndroid Build Coastguard Worker sdk_version: "system_current", 759*333d2b36SAndroid Build Coastguard Worker }, 760*333d2b36SAndroid Build Coastguard Worker module_lib: { 761*333d2b36SAndroid Build Coastguard Worker jars: ["sdk_library/module-lib/myjavalib-stubs.jar"], 762*333d2b36SAndroid Build Coastguard Worker stub_srcs: ["sdk_library/module-lib/myjavalib_stub_sources"], 763*333d2b36SAndroid Build Coastguard Worker current_api: "sdk_library/module-lib/myjavalib.txt", 764*333d2b36SAndroid Build Coastguard Worker removed_api: "sdk_library/module-lib/myjavalib-removed.txt", 765*333d2b36SAndroid Build Coastguard Worker sdk_version: "module_current", 766*333d2b36SAndroid Build Coastguard Worker }, 767*333d2b36SAndroid Build Coastguard Worker} 768*333d2b36SAndroid Build Coastguard Worker 769*333d2b36SAndroid Build Coastguard Workerjava_system_modules_import { 770*333d2b36SAndroid Build Coastguard Worker name: "my-system-modules", 771*333d2b36SAndroid Build Coastguard Worker prefer: false, 772*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 773*333d2b36SAndroid Build Coastguard Worker libs: [ 774*333d2b36SAndroid Build Coastguard Worker "mysdk_system-module", 775*333d2b36SAndroid Build Coastguard Worker "exported-system-module", 776*333d2b36SAndroid Build Coastguard Worker "myjavalib.stubs", 777*333d2b36SAndroid Build Coastguard Worker ], 778*333d2b36SAndroid Build Coastguard Worker} 779*333d2b36SAndroid Build Coastguard Worker`), 780*333d2b36SAndroid Build Coastguard Worker checkAllCopyRules(` 781*333d2b36SAndroid Build Coastguard Worker.intermediates/exported-system-module/android_common/turbine-combined/exported-system-module.jar -> java/exported-system-module.jar 782*333d2b36SAndroid Build Coastguard Worker.intermediates/system-module/android_common/turbine-combined/system-module.jar -> java/system-module.jar 783*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.exportable/android_common/combined/myjavalib.stubs.exportable.jar -> sdk_library/public/myjavalib-stubs.jar 784*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source/android_common/exportable/myjavalib.stubs.source_api.txt -> sdk_library/public/myjavalib.txt 785*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source/android_common/exportable/myjavalib.stubs.source_removed.txt -> sdk_library/public/myjavalib-removed.txt 786*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.exportable.system/android_common/combined/myjavalib.stubs.exportable.system.jar -> sdk_library/system/myjavalib-stubs.jar 787*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source.system/android_common/exportable/myjavalib.stubs.source.system_api.txt -> sdk_library/system/myjavalib.txt 788*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source.system/android_common/exportable/myjavalib.stubs.source.system_removed.txt -> sdk_library/system/myjavalib-removed.txt 789*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.exportable.module_lib/android_common/combined/myjavalib.stubs.exportable.module_lib.jar -> sdk_library/module-lib/myjavalib-stubs.jar 790*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source.module_lib/android_common/exportable/myjavalib.stubs.source.module_lib_api.txt -> sdk_library/module-lib/myjavalib.txt 791*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source.module_lib/android_common/exportable/myjavalib.stubs.source.module_lib_removed.txt -> sdk_library/module-lib/myjavalib-removed.txt 792*333d2b36SAndroid Build Coastguard Worker`), 793*333d2b36SAndroid Build Coastguard Worker checkInfoContents(result.Config, ` 794*333d2b36SAndroid Build Coastguard Worker[ 795*333d2b36SAndroid Build Coastguard Worker { 796*333d2b36SAndroid Build Coastguard Worker "@type": "sdk", 797*333d2b36SAndroid Build Coastguard Worker "@name": "mysdk", 798*333d2b36SAndroid Build Coastguard Worker "java_header_libs": [ 799*333d2b36SAndroid Build Coastguard Worker "exported-system-module", 800*333d2b36SAndroid Build Coastguard Worker "system-module" 801*333d2b36SAndroid Build Coastguard Worker ], 802*333d2b36SAndroid Build Coastguard Worker "java_sdk_libs": [ 803*333d2b36SAndroid Build Coastguard Worker "myjavalib" 804*333d2b36SAndroid Build Coastguard Worker ], 805*333d2b36SAndroid Build Coastguard Worker "java_system_modules": [ 806*333d2b36SAndroid Build Coastguard Worker "my-system-modules" 807*333d2b36SAndroid Build Coastguard Worker ] 808*333d2b36SAndroid Build Coastguard Worker }, 809*333d2b36SAndroid Build Coastguard Worker { 810*333d2b36SAndroid Build Coastguard Worker "@type": "java_library", 811*333d2b36SAndroid Build Coastguard Worker "@name": "exported-system-module" 812*333d2b36SAndroid Build Coastguard Worker }, 813*333d2b36SAndroid Build Coastguard Worker { 814*333d2b36SAndroid Build Coastguard Worker "@type": "java_system_modules", 815*333d2b36SAndroid Build Coastguard Worker "@name": "my-system-modules", 816*333d2b36SAndroid Build Coastguard Worker "@deps": [ 817*333d2b36SAndroid Build Coastguard Worker "exported-system-module", 818*333d2b36SAndroid Build Coastguard Worker "system-module" 819*333d2b36SAndroid Build Coastguard Worker ] 820*333d2b36SAndroid Build Coastguard Worker }, 821*333d2b36SAndroid Build Coastguard Worker { 822*333d2b36SAndroid Build Coastguard Worker "@type": "java_sdk_library", 823*333d2b36SAndroid Build Coastguard Worker "@name": "myjavalib", 824*333d2b36SAndroid Build Coastguard Worker "dist_stem": "myjavalib", 825*333d2b36SAndroid Build Coastguard Worker "scopes": { 826*333d2b36SAndroid Build Coastguard Worker "module-lib": { 827*333d2b36SAndroid Build Coastguard Worker "current_api": "sdk_library/module-lib/myjavalib.txt", 828*333d2b36SAndroid Build Coastguard Worker "latest_api": "out/soong/.intermediates/prebuilts/sdk/myjavalib.api.module-lib.latest/gen/myjavalib.api.module-lib.latest", 829*333d2b36SAndroid Build Coastguard Worker "latest_removed_api": "out/soong/.intermediates/prebuilts/sdk/myjavalib-removed.api.module-lib.latest/gen/myjavalib-removed.api.module-lib.latest", 830*333d2b36SAndroid Build Coastguard Worker "removed_api": "sdk_library/module-lib/myjavalib-removed.txt" 831*333d2b36SAndroid Build Coastguard Worker }, 832*333d2b36SAndroid Build Coastguard Worker "public": { 833*333d2b36SAndroid Build Coastguard Worker "current_api": "sdk_library/public/myjavalib.txt", 834*333d2b36SAndroid Build Coastguard Worker "latest_api": "out/soong/.intermediates/prebuilts/sdk/myjavalib.api.public.latest/gen/myjavalib.api.public.latest", 835*333d2b36SAndroid Build Coastguard Worker "latest_removed_api": "out/soong/.intermediates/prebuilts/sdk/myjavalib-removed.api.public.latest/gen/myjavalib-removed.api.public.latest", 836*333d2b36SAndroid Build Coastguard Worker "removed_api": "sdk_library/public/myjavalib-removed.txt" 837*333d2b36SAndroid Build Coastguard Worker }, 838*333d2b36SAndroid Build Coastguard Worker "system": { 839*333d2b36SAndroid Build Coastguard Worker "current_api": "sdk_library/system/myjavalib.txt", 840*333d2b36SAndroid Build Coastguard Worker "latest_api": "out/soong/.intermediates/prebuilts/sdk/myjavalib.api.system.latest/gen/myjavalib.api.system.latest", 841*333d2b36SAndroid Build Coastguard Worker "latest_removed_api": "out/soong/.intermediates/prebuilts/sdk/myjavalib-removed.api.system.latest/gen/myjavalib-removed.api.system.latest", 842*333d2b36SAndroid Build Coastguard Worker "removed_api": "sdk_library/system/myjavalib-removed.txt" 843*333d2b36SAndroid Build Coastguard Worker } 844*333d2b36SAndroid Build Coastguard Worker } 845*333d2b36SAndroid Build Coastguard Worker }, 846*333d2b36SAndroid Build Coastguard Worker { 847*333d2b36SAndroid Build Coastguard Worker "@type": "java_library", 848*333d2b36SAndroid Build Coastguard Worker "@name": "system-module" 849*333d2b36SAndroid Build Coastguard Worker } 850*333d2b36SAndroid Build Coastguard Worker] 851*333d2b36SAndroid Build Coastguard Worker`), 852*333d2b36SAndroid Build Coastguard Worker ) 853*333d2b36SAndroid Build Coastguard Worker} 854*333d2b36SAndroid Build Coastguard Worker 855*333d2b36SAndroid Build Coastguard Workerfunc TestHostSnapshotWithJavaSystemModules(t *testing.T) { 856*333d2b36SAndroid Build Coastguard Worker result := android.GroupFixturePreparers(prepareForSdkTestWithJava).RunTestWithBp(t, ` 857*333d2b36SAndroid Build Coastguard Worker sdk { 858*333d2b36SAndroid Build Coastguard Worker name: "mysdk", 859*333d2b36SAndroid Build Coastguard Worker device_supported: false, 860*333d2b36SAndroid Build Coastguard Worker host_supported: true, 861*333d2b36SAndroid Build Coastguard Worker java_system_modules: ["my-system-modules"], 862*333d2b36SAndroid Build Coastguard Worker } 863*333d2b36SAndroid Build Coastguard Worker 864*333d2b36SAndroid Build Coastguard Worker java_system_modules { 865*333d2b36SAndroid Build Coastguard Worker name: "my-system-modules", 866*333d2b36SAndroid Build Coastguard Worker device_supported: false, 867*333d2b36SAndroid Build Coastguard Worker host_supported: true, 868*333d2b36SAndroid Build Coastguard Worker libs: ["system-module"], 869*333d2b36SAndroid Build Coastguard Worker } 870*333d2b36SAndroid Build Coastguard Worker 871*333d2b36SAndroid Build Coastguard Worker java_library { 872*333d2b36SAndroid Build Coastguard Worker name: "system-module", 873*333d2b36SAndroid Build Coastguard Worker device_supported: false, 874*333d2b36SAndroid Build Coastguard Worker host_supported: true, 875*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 876*333d2b36SAndroid Build Coastguard Worker sdk_version: "none", 877*333d2b36SAndroid Build Coastguard Worker system_modules: "none", 878*333d2b36SAndroid Build Coastguard Worker } 879*333d2b36SAndroid Build Coastguard Worker `) 880*333d2b36SAndroid Build Coastguard Worker 881*333d2b36SAndroid Build Coastguard Worker CheckSnapshot(t, result, "mysdk", "", 882*333d2b36SAndroid Build Coastguard Worker checkAndroidBpContents(` 883*333d2b36SAndroid Build Coastguard Worker// This is auto-generated. DO NOT EDIT. 884*333d2b36SAndroid Build Coastguard Worker 885*333d2b36SAndroid Build Coastguard Workerapex_contributions_defaults { 886*333d2b36SAndroid Build Coastguard Worker name: "mysdk.contributions", 887*333d2b36SAndroid Build Coastguard Worker contents: ["prebuilt_my-system-modules"], 888*333d2b36SAndroid Build Coastguard Worker} 889*333d2b36SAndroid Build Coastguard Worker 890*333d2b36SAndroid Build Coastguard Workerjava_import { 891*333d2b36SAndroid Build Coastguard Worker name: "mysdk_system-module", 892*333d2b36SAndroid Build Coastguard Worker prefer: false, 893*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:private"], 894*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:platform"], 895*333d2b36SAndroid Build Coastguard Worker device_supported: false, 896*333d2b36SAndroid Build Coastguard Worker host_supported: true, 897*333d2b36SAndroid Build Coastguard Worker jars: ["java/system-module.jar"], 898*333d2b36SAndroid Build Coastguard Worker} 899*333d2b36SAndroid Build Coastguard Worker 900*333d2b36SAndroid Build Coastguard Workerjava_system_modules_import { 901*333d2b36SAndroid Build Coastguard Worker name: "my-system-modules", 902*333d2b36SAndroid Build Coastguard Worker prefer: false, 903*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 904*333d2b36SAndroid Build Coastguard Worker device_supported: false, 905*333d2b36SAndroid Build Coastguard Worker host_supported: true, 906*333d2b36SAndroid Build Coastguard Worker libs: ["mysdk_system-module"], 907*333d2b36SAndroid Build Coastguard Worker} 908*333d2b36SAndroid Build Coastguard Worker`), 909*333d2b36SAndroid Build Coastguard Worker checkAllCopyRules(".intermediates/system-module/linux_glibc_common/javac-header/system-module.jar -> java/system-module.jar"), 910*333d2b36SAndroid Build Coastguard Worker ) 911*333d2b36SAndroid Build Coastguard Worker} 912*333d2b36SAndroid Build Coastguard Worker 913*333d2b36SAndroid Build Coastguard Workerfunc TestDeviceAndHostSnapshotWithOsSpecificMembers(t *testing.T) { 914*333d2b36SAndroid Build Coastguard Worker result := android.GroupFixturePreparers(prepareForSdkTestWithJava).RunTestWithBp(t, ` 915*333d2b36SAndroid Build Coastguard Worker module_exports { 916*333d2b36SAndroid Build Coastguard Worker name: "myexports", 917*333d2b36SAndroid Build Coastguard Worker host_supported: true, 918*333d2b36SAndroid Build Coastguard Worker java_libs: ["myjavalib"], 919*333d2b36SAndroid Build Coastguard Worker target: { 920*333d2b36SAndroid Build Coastguard Worker android: { 921*333d2b36SAndroid Build Coastguard Worker java_header_libs: ["androidjavalib"], 922*333d2b36SAndroid Build Coastguard Worker }, 923*333d2b36SAndroid Build Coastguard Worker host: { 924*333d2b36SAndroid Build Coastguard Worker java_header_libs: ["hostjavalib"], 925*333d2b36SAndroid Build Coastguard Worker }, 926*333d2b36SAndroid Build Coastguard Worker }, 927*333d2b36SAndroid Build Coastguard Worker } 928*333d2b36SAndroid Build Coastguard Worker 929*333d2b36SAndroid Build Coastguard Worker java_library { 930*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 931*333d2b36SAndroid Build Coastguard Worker host_supported: true, 932*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 933*333d2b36SAndroid Build Coastguard Worker system_modules: "none", 934*333d2b36SAndroid Build Coastguard Worker sdk_version: "none", 935*333d2b36SAndroid Build Coastguard Worker } 936*333d2b36SAndroid Build Coastguard Worker 937*333d2b36SAndroid Build Coastguard Worker java_library { 938*333d2b36SAndroid Build Coastguard Worker name: "androidjavalib", 939*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 940*333d2b36SAndroid Build Coastguard Worker system_modules: "none", 941*333d2b36SAndroid Build Coastguard Worker sdk_version: "none", 942*333d2b36SAndroid Build Coastguard Worker } 943*333d2b36SAndroid Build Coastguard Worker 944*333d2b36SAndroid Build Coastguard Worker java_library_host { 945*333d2b36SAndroid Build Coastguard Worker name: "hostjavalib", 946*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 947*333d2b36SAndroid Build Coastguard Worker } 948*333d2b36SAndroid Build Coastguard Worker `) 949*333d2b36SAndroid Build Coastguard Worker 950*333d2b36SAndroid Build Coastguard Worker CheckSnapshot(t, result, "myexports", "", 951*333d2b36SAndroid Build Coastguard Worker checkAndroidBpContents(` 952*333d2b36SAndroid Build Coastguard Worker// This is auto-generated. DO NOT EDIT. 953*333d2b36SAndroid Build Coastguard Worker 954*333d2b36SAndroid Build Coastguard Workerapex_contributions_defaults { 955*333d2b36SAndroid Build Coastguard Worker name: "myexports.contributions", 956*333d2b36SAndroid Build Coastguard Worker contents: [ 957*333d2b36SAndroid Build Coastguard Worker "prebuilt_hostjavalib", 958*333d2b36SAndroid Build Coastguard Worker "prebuilt_androidjavalib", 959*333d2b36SAndroid Build Coastguard Worker "prebuilt_myjavalib", 960*333d2b36SAndroid Build Coastguard Worker ], 961*333d2b36SAndroid Build Coastguard Worker} 962*333d2b36SAndroid Build Coastguard Worker 963*333d2b36SAndroid Build Coastguard Workerjava_import { 964*333d2b36SAndroid Build Coastguard Worker name: "hostjavalib", 965*333d2b36SAndroid Build Coastguard Worker prefer: false, 966*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 967*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:platform"], 968*333d2b36SAndroid Build Coastguard Worker device_supported: false, 969*333d2b36SAndroid Build Coastguard Worker host_supported: true, 970*333d2b36SAndroid Build Coastguard Worker jars: ["java/hostjavalib.jar"], 971*333d2b36SAndroid Build Coastguard Worker} 972*333d2b36SAndroid Build Coastguard Worker 973*333d2b36SAndroid Build Coastguard Workerjava_import { 974*333d2b36SAndroid Build Coastguard Worker name: "androidjavalib", 975*333d2b36SAndroid Build Coastguard Worker prefer: false, 976*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 977*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:platform"], 978*333d2b36SAndroid Build Coastguard Worker jars: ["java/androidjavalib.jar"], 979*333d2b36SAndroid Build Coastguard Worker} 980*333d2b36SAndroid Build Coastguard Worker 981*333d2b36SAndroid Build Coastguard Workerjava_import { 982*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 983*333d2b36SAndroid Build Coastguard Worker prefer: false, 984*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 985*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:platform"], 986*333d2b36SAndroid Build Coastguard Worker host_supported: true, 987*333d2b36SAndroid Build Coastguard Worker target: { 988*333d2b36SAndroid Build Coastguard Worker android: { 989*333d2b36SAndroid Build Coastguard Worker jars: ["java/android/myjavalib.jar"], 990*333d2b36SAndroid Build Coastguard Worker }, 991*333d2b36SAndroid Build Coastguard Worker linux_glibc: { 992*333d2b36SAndroid Build Coastguard Worker jars: ["java/linux_glibc/myjavalib.jar"], 993*333d2b36SAndroid Build Coastguard Worker }, 994*333d2b36SAndroid Build Coastguard Worker }, 995*333d2b36SAndroid Build Coastguard Worker} 996*333d2b36SAndroid Build Coastguard Worker`), 997*333d2b36SAndroid Build Coastguard Worker checkAllCopyRules(` 998*333d2b36SAndroid Build Coastguard Worker.intermediates/hostjavalib/linux_glibc_common/javac-header/hostjavalib.jar -> java/hostjavalib.jar 999*333d2b36SAndroid Build Coastguard Worker.intermediates/androidjavalib/android_common/turbine-combined/androidjavalib.jar -> java/androidjavalib.jar 1000*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib/android_common/javac/myjavalib.jar -> java/android/myjavalib.jar 1001*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib/linux_glibc_common/javac/myjavalib.jar -> java/linux_glibc/myjavalib.jar 1002*333d2b36SAndroid Build Coastguard Worker`), 1003*333d2b36SAndroid Build Coastguard Worker ) 1004*333d2b36SAndroid Build Coastguard Worker} 1005*333d2b36SAndroid Build Coastguard Worker 1006*333d2b36SAndroid Build Coastguard Workerfunc TestSnapshotWithJavaSdkLibrary(t *testing.T) { 1007*333d2b36SAndroid Build Coastguard Worker result := android.GroupFixturePreparers(prepareForSdkTestWithJavaSdkLibrary).RunTestWithBp(t, ` 1008*333d2b36SAndroid Build Coastguard Worker sdk { 1009*333d2b36SAndroid Build Coastguard Worker name: "mysdk", 1010*333d2b36SAndroid Build Coastguard Worker java_sdk_libs: ["myjavalib"], 1011*333d2b36SAndroid Build Coastguard Worker } 1012*333d2b36SAndroid Build Coastguard Worker 1013*333d2b36SAndroid Build Coastguard Worker java_sdk_library { 1014*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 1015*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:anyapex"], 1016*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 1017*333d2b36SAndroid Build Coastguard Worker sdk_version: "current", 1018*333d2b36SAndroid Build Coastguard Worker shared_library: false, 1019*333d2b36SAndroid Build Coastguard Worker stubs_library_visibility: ["//other"], 1020*333d2b36SAndroid Build Coastguard Worker stubs_source_visibility: ["//another"], 1021*333d2b36SAndroid Build Coastguard Worker permitted_packages: ["pkg.myjavalib"], 1022*333d2b36SAndroid Build Coastguard Worker } 1023*333d2b36SAndroid Build Coastguard Worker `) 1024*333d2b36SAndroid Build Coastguard Worker 1025*333d2b36SAndroid Build Coastguard Worker CheckSnapshot(t, result, "mysdk", "", 1026*333d2b36SAndroid Build Coastguard Worker checkAndroidBpContents(` 1027*333d2b36SAndroid Build Coastguard Worker// This is auto-generated. DO NOT EDIT. 1028*333d2b36SAndroid Build Coastguard Worker 1029*333d2b36SAndroid Build Coastguard Workerapex_contributions_defaults { 1030*333d2b36SAndroid Build Coastguard Worker name: "mysdk.contributions", 1031*333d2b36SAndroid Build Coastguard Worker contents: ["prebuilt_myjavalib"], 1032*333d2b36SAndroid Build Coastguard Worker} 1033*333d2b36SAndroid Build Coastguard Worker 1034*333d2b36SAndroid Build Coastguard Workerjava_sdk_library_import { 1035*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 1036*333d2b36SAndroid Build Coastguard Worker prefer: false, 1037*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 1038*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:anyapex"], 1039*333d2b36SAndroid Build Coastguard Worker shared_library: false, 1040*333d2b36SAndroid Build Coastguard Worker permitted_packages: ["pkg.myjavalib"], 1041*333d2b36SAndroid Build Coastguard Worker public: { 1042*333d2b36SAndroid Build Coastguard Worker jars: ["sdk_library/public/myjavalib-stubs.jar"], 1043*333d2b36SAndroid Build Coastguard Worker stub_srcs: ["sdk_library/public/myjavalib_stub_sources"], 1044*333d2b36SAndroid Build Coastguard Worker current_api: "sdk_library/public/myjavalib.txt", 1045*333d2b36SAndroid Build Coastguard Worker removed_api: "sdk_library/public/myjavalib-removed.txt", 1046*333d2b36SAndroid Build Coastguard Worker sdk_version: "current", 1047*333d2b36SAndroid Build Coastguard Worker }, 1048*333d2b36SAndroid Build Coastguard Worker system: { 1049*333d2b36SAndroid Build Coastguard Worker jars: ["sdk_library/system/myjavalib-stubs.jar"], 1050*333d2b36SAndroid Build Coastguard Worker stub_srcs: ["sdk_library/system/myjavalib_stub_sources"], 1051*333d2b36SAndroid Build Coastguard Worker current_api: "sdk_library/system/myjavalib.txt", 1052*333d2b36SAndroid Build Coastguard Worker removed_api: "sdk_library/system/myjavalib-removed.txt", 1053*333d2b36SAndroid Build Coastguard Worker sdk_version: "system_current", 1054*333d2b36SAndroid Build Coastguard Worker }, 1055*333d2b36SAndroid Build Coastguard Worker test: { 1056*333d2b36SAndroid Build Coastguard Worker jars: ["sdk_library/test/myjavalib-stubs.jar"], 1057*333d2b36SAndroid Build Coastguard Worker stub_srcs: ["sdk_library/test/myjavalib_stub_sources"], 1058*333d2b36SAndroid Build Coastguard Worker current_api: "sdk_library/test/myjavalib.txt", 1059*333d2b36SAndroid Build Coastguard Worker removed_api: "sdk_library/test/myjavalib-removed.txt", 1060*333d2b36SAndroid Build Coastguard Worker sdk_version: "test_current", 1061*333d2b36SAndroid Build Coastguard Worker }, 1062*333d2b36SAndroid Build Coastguard Worker} 1063*333d2b36SAndroid Build Coastguard Worker`), 1064*333d2b36SAndroid Build Coastguard Worker checkAllCopyRules(` 1065*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.exportable/android_common/combined/myjavalib.stubs.exportable.jar -> sdk_library/public/myjavalib-stubs.jar 1066*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source/android_common/exportable/myjavalib.stubs.source_api.txt -> sdk_library/public/myjavalib.txt 1067*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source/android_common/exportable/myjavalib.stubs.source_removed.txt -> sdk_library/public/myjavalib-removed.txt 1068*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.exportable.system/android_common/combined/myjavalib.stubs.exportable.system.jar -> sdk_library/system/myjavalib-stubs.jar 1069*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source.system/android_common/exportable/myjavalib.stubs.source.system_api.txt -> sdk_library/system/myjavalib.txt 1070*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source.system/android_common/exportable/myjavalib.stubs.source.system_removed.txt -> sdk_library/system/myjavalib-removed.txt 1071*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.exportable.test/android_common/combined/myjavalib.stubs.exportable.test.jar -> sdk_library/test/myjavalib-stubs.jar 1072*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source.test/android_common/exportable/myjavalib.stubs.source.test_api.txt -> sdk_library/test/myjavalib.txt 1073*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source.test/android_common/exportable/myjavalib.stubs.source.test_removed.txt -> sdk_library/test/myjavalib-removed.txt 1074*333d2b36SAndroid Build Coastguard Worker`), 1075*333d2b36SAndroid Build Coastguard Worker checkMergeZips( 1076*333d2b36SAndroid Build Coastguard Worker ".intermediates/mysdk/common_os/tmp/sdk_library/public/myjavalib_stub_sources.zip", 1077*333d2b36SAndroid Build Coastguard Worker ".intermediates/mysdk/common_os/tmp/sdk_library/system/myjavalib_stub_sources.zip", 1078*333d2b36SAndroid Build Coastguard Worker ".intermediates/mysdk/common_os/tmp/sdk_library/test/myjavalib_stub_sources.zip", 1079*333d2b36SAndroid Build Coastguard Worker ), 1080*333d2b36SAndroid Build Coastguard Worker ) 1081*333d2b36SAndroid Build Coastguard Worker} 1082*333d2b36SAndroid Build Coastguard Worker 1083*333d2b36SAndroid Build Coastguard Workerfunc TestSnapshotWithJavaSdkLibrary_DistStem(t *testing.T) { 1084*333d2b36SAndroid Build Coastguard Worker result := android.GroupFixturePreparers(prepareForSdkTestWithJavaSdkLibrary).RunTestWithBp(t, ` 1085*333d2b36SAndroid Build Coastguard Worker sdk { 1086*333d2b36SAndroid Build Coastguard Worker name: "mysdk", 1087*333d2b36SAndroid Build Coastguard Worker java_sdk_libs: ["myjavalib-foo"], 1088*333d2b36SAndroid Build Coastguard Worker } 1089*333d2b36SAndroid Build Coastguard Worker 1090*333d2b36SAndroid Build Coastguard Worker java_sdk_library { 1091*333d2b36SAndroid Build Coastguard Worker name: "myjavalib-foo", 1092*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:anyapex"], 1093*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 1094*333d2b36SAndroid Build Coastguard Worker sdk_version: "current", 1095*333d2b36SAndroid Build Coastguard Worker shared_library: false, 1096*333d2b36SAndroid Build Coastguard Worker public: { 1097*333d2b36SAndroid Build Coastguard Worker enabled: true, 1098*333d2b36SAndroid Build Coastguard Worker }, 1099*333d2b36SAndroid Build Coastguard Worker dist_stem: "myjavalib", 1100*333d2b36SAndroid Build Coastguard Worker } 1101*333d2b36SAndroid Build Coastguard Worker `) 1102*333d2b36SAndroid Build Coastguard Worker 1103*333d2b36SAndroid Build Coastguard Worker CheckSnapshot(t, result, "mysdk", "", 1104*333d2b36SAndroid Build Coastguard Worker checkAndroidBpContents(` 1105*333d2b36SAndroid Build Coastguard Worker// This is auto-generated. DO NOT EDIT. 1106*333d2b36SAndroid Build Coastguard Worker 1107*333d2b36SAndroid Build Coastguard Workerapex_contributions_defaults { 1108*333d2b36SAndroid Build Coastguard Worker name: "mysdk.contributions", 1109*333d2b36SAndroid Build Coastguard Worker contents: ["prebuilt_myjavalib-foo"], 1110*333d2b36SAndroid Build Coastguard Worker} 1111*333d2b36SAndroid Build Coastguard Worker 1112*333d2b36SAndroid Build Coastguard Workerjava_sdk_library_import { 1113*333d2b36SAndroid Build Coastguard Worker name: "myjavalib-foo", 1114*333d2b36SAndroid Build Coastguard Worker prefer: false, 1115*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 1116*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:anyapex"], 1117*333d2b36SAndroid Build Coastguard Worker shared_library: false, 1118*333d2b36SAndroid Build Coastguard Worker public: { 1119*333d2b36SAndroid Build Coastguard Worker jars: ["sdk_library/public/myjavalib-stubs.jar"], 1120*333d2b36SAndroid Build Coastguard Worker stub_srcs: ["sdk_library/public/myjavalib_stub_sources"], 1121*333d2b36SAndroid Build Coastguard Worker current_api: "sdk_library/public/myjavalib.txt", 1122*333d2b36SAndroid Build Coastguard Worker removed_api: "sdk_library/public/myjavalib-removed.txt", 1123*333d2b36SAndroid Build Coastguard Worker sdk_version: "current", 1124*333d2b36SAndroid Build Coastguard Worker }, 1125*333d2b36SAndroid Build Coastguard Worker} 1126*333d2b36SAndroid Build Coastguard Worker`), 1127*333d2b36SAndroid Build Coastguard Worker checkAllCopyRules(` 1128*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib-foo.stubs.exportable/android_common/combined/myjavalib-foo.stubs.exportable.jar -> sdk_library/public/myjavalib-stubs.jar 1129*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib-foo.stubs.source/android_common/exportable/myjavalib-foo.stubs.source_api.txt -> sdk_library/public/myjavalib.txt 1130*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib-foo.stubs.source/android_common/exportable/myjavalib-foo.stubs.source_removed.txt -> sdk_library/public/myjavalib-removed.txt 1131*333d2b36SAndroid Build Coastguard Worker`), 1132*333d2b36SAndroid Build Coastguard Worker checkMergeZips( 1133*333d2b36SAndroid Build Coastguard Worker ".intermediates/mysdk/common_os/tmp/sdk_library/public/myjavalib_stub_sources.zip", 1134*333d2b36SAndroid Build Coastguard Worker ), 1135*333d2b36SAndroid Build Coastguard Worker ) 1136*333d2b36SAndroid Build Coastguard Worker} 1137*333d2b36SAndroid Build Coastguard Worker 1138*333d2b36SAndroid Build Coastguard Workerfunc TestSnapshotWithJavaSdkLibrary_UseSrcJar(t *testing.T) { 1139*333d2b36SAndroid Build Coastguard Worker result := android.GroupFixturePreparers( 1140*333d2b36SAndroid Build Coastguard Worker prepareForSdkTestWithJavaSdkLibrary, 1141*333d2b36SAndroid Build Coastguard Worker android.FixtureMergeEnv(map[string]string{ 1142*333d2b36SAndroid Build Coastguard Worker "SOONG_SDK_SNAPSHOT_USE_SRCJAR": "true", 1143*333d2b36SAndroid Build Coastguard Worker }), 1144*333d2b36SAndroid Build Coastguard Worker ).RunTestWithBp(t, ` 1145*333d2b36SAndroid Build Coastguard Worker sdk { 1146*333d2b36SAndroid Build Coastguard Worker name: "mysdk", 1147*333d2b36SAndroid Build Coastguard Worker java_sdk_libs: ["myjavalib"], 1148*333d2b36SAndroid Build Coastguard Worker } 1149*333d2b36SAndroid Build Coastguard Worker 1150*333d2b36SAndroid Build Coastguard Worker java_sdk_library { 1151*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 1152*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 1153*333d2b36SAndroid Build Coastguard Worker sdk_version: "current", 1154*333d2b36SAndroid Build Coastguard Worker shared_library: false, 1155*333d2b36SAndroid Build Coastguard Worker public: { 1156*333d2b36SAndroid Build Coastguard Worker enabled: true, 1157*333d2b36SAndroid Build Coastguard Worker }, 1158*333d2b36SAndroid Build Coastguard Worker } 1159*333d2b36SAndroid Build Coastguard Worker `) 1160*333d2b36SAndroid Build Coastguard Worker 1161*333d2b36SAndroid Build Coastguard Worker CheckSnapshot(t, result, "mysdk", "", 1162*333d2b36SAndroid Build Coastguard Worker checkAndroidBpContents(` 1163*333d2b36SAndroid Build Coastguard Worker// This is auto-generated. DO NOT EDIT. 1164*333d2b36SAndroid Build Coastguard Worker 1165*333d2b36SAndroid Build Coastguard Workerapex_contributions_defaults { 1166*333d2b36SAndroid Build Coastguard Worker name: "mysdk.contributions", 1167*333d2b36SAndroid Build Coastguard Worker contents: ["prebuilt_myjavalib"], 1168*333d2b36SAndroid Build Coastguard Worker} 1169*333d2b36SAndroid Build Coastguard Worker 1170*333d2b36SAndroid Build Coastguard Workerjava_sdk_library_import { 1171*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 1172*333d2b36SAndroid Build Coastguard Worker prefer: false, 1173*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 1174*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:platform"], 1175*333d2b36SAndroid Build Coastguard Worker shared_library: false, 1176*333d2b36SAndroid Build Coastguard Worker public: { 1177*333d2b36SAndroid Build Coastguard Worker jars: ["sdk_library/public/myjavalib-stubs.jar"], 1178*333d2b36SAndroid Build Coastguard Worker stub_srcs: ["sdk_library/public/myjavalib.srcjar"], 1179*333d2b36SAndroid Build Coastguard Worker current_api: "sdk_library/public/myjavalib.txt", 1180*333d2b36SAndroid Build Coastguard Worker removed_api: "sdk_library/public/myjavalib-removed.txt", 1181*333d2b36SAndroid Build Coastguard Worker sdk_version: "current", 1182*333d2b36SAndroid Build Coastguard Worker }, 1183*333d2b36SAndroid Build Coastguard Worker} 1184*333d2b36SAndroid Build Coastguard Worker `), 1185*333d2b36SAndroid Build Coastguard Worker checkAllCopyRules(` 1186*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.exportable/android_common/combined/myjavalib.stubs.exportable.jar -> sdk_library/public/myjavalib-stubs.jar 1187*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source/android_common/exportable/myjavalib.stubs.source-stubs.srcjar -> sdk_library/public/myjavalib.srcjar 1188*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source/android_common/exportable/myjavalib.stubs.source_api.txt -> sdk_library/public/myjavalib.txt 1189*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source/android_common/exportable/myjavalib.stubs.source_removed.txt -> sdk_library/public/myjavalib-removed.txt 1190*333d2b36SAndroid Build Coastguard Worker `), 1191*333d2b36SAndroid Build Coastguard Worker ) 1192*333d2b36SAndroid Build Coastguard Worker} 1193*333d2b36SAndroid Build Coastguard Worker 1194*333d2b36SAndroid Build Coastguard Workerfunc TestSnapshotWithJavaSdkLibrary_AnnotationsZip(t *testing.T) { 1195*333d2b36SAndroid Build Coastguard Worker result := android.GroupFixturePreparers(prepareForSdkTestWithJavaSdkLibrary).RunTestWithBp(t, ` 1196*333d2b36SAndroid Build Coastguard Worker sdk { 1197*333d2b36SAndroid Build Coastguard Worker name: "mysdk", 1198*333d2b36SAndroid Build Coastguard Worker java_sdk_libs: ["myjavalib"], 1199*333d2b36SAndroid Build Coastguard Worker } 1200*333d2b36SAndroid Build Coastguard Worker 1201*333d2b36SAndroid Build Coastguard Worker java_sdk_library { 1202*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 1203*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 1204*333d2b36SAndroid Build Coastguard Worker sdk_version: "current", 1205*333d2b36SAndroid Build Coastguard Worker shared_library: false, 1206*333d2b36SAndroid Build Coastguard Worker annotations_enabled: true, 1207*333d2b36SAndroid Build Coastguard Worker public: { 1208*333d2b36SAndroid Build Coastguard Worker enabled: true, 1209*333d2b36SAndroid Build Coastguard Worker }, 1210*333d2b36SAndroid Build Coastguard Worker } 1211*333d2b36SAndroid Build Coastguard Worker `) 1212*333d2b36SAndroid Build Coastguard Worker 1213*333d2b36SAndroid Build Coastguard Worker CheckSnapshot(t, result, "mysdk", "", 1214*333d2b36SAndroid Build Coastguard Worker checkAndroidBpContents(` 1215*333d2b36SAndroid Build Coastguard Worker// This is auto-generated. DO NOT EDIT. 1216*333d2b36SAndroid Build Coastguard Worker 1217*333d2b36SAndroid Build Coastguard Workerapex_contributions_defaults { 1218*333d2b36SAndroid Build Coastguard Worker name: "mysdk.contributions", 1219*333d2b36SAndroid Build Coastguard Worker contents: ["prebuilt_myjavalib"], 1220*333d2b36SAndroid Build Coastguard Worker} 1221*333d2b36SAndroid Build Coastguard Worker 1222*333d2b36SAndroid Build Coastguard Workerjava_sdk_library_import { 1223*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 1224*333d2b36SAndroid Build Coastguard Worker prefer: false, 1225*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 1226*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:platform"], 1227*333d2b36SAndroid Build Coastguard Worker shared_library: false, 1228*333d2b36SAndroid Build Coastguard Worker public: { 1229*333d2b36SAndroid Build Coastguard Worker jars: ["sdk_library/public/myjavalib-stubs.jar"], 1230*333d2b36SAndroid Build Coastguard Worker stub_srcs: ["sdk_library/public/myjavalib_stub_sources"], 1231*333d2b36SAndroid Build Coastguard Worker current_api: "sdk_library/public/myjavalib.txt", 1232*333d2b36SAndroid Build Coastguard Worker removed_api: "sdk_library/public/myjavalib-removed.txt", 1233*333d2b36SAndroid Build Coastguard Worker annotations: "sdk_library/public/myjavalib_annotations.zip", 1234*333d2b36SAndroid Build Coastguard Worker sdk_version: "current", 1235*333d2b36SAndroid Build Coastguard Worker }, 1236*333d2b36SAndroid Build Coastguard Worker} 1237*333d2b36SAndroid Build Coastguard Worker `), 1238*333d2b36SAndroid Build Coastguard Worker checkAllCopyRules(` 1239*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.exportable/android_common/combined/myjavalib.stubs.exportable.jar -> sdk_library/public/myjavalib-stubs.jar 1240*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source/android_common/exportable/myjavalib.stubs.source_api.txt -> sdk_library/public/myjavalib.txt 1241*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source/android_common/exportable/myjavalib.stubs.source_removed.txt -> sdk_library/public/myjavalib-removed.txt 1242*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source/android_common/exportable/myjavalib.stubs.source_annotations.zip -> sdk_library/public/myjavalib_annotations.zip 1243*333d2b36SAndroid Build Coastguard Worker `), 1244*333d2b36SAndroid Build Coastguard Worker checkMergeZips(".intermediates/mysdk/common_os/tmp/sdk_library/public/myjavalib_stub_sources.zip"), 1245*333d2b36SAndroid Build Coastguard Worker ) 1246*333d2b36SAndroid Build Coastguard Worker} 1247*333d2b36SAndroid Build Coastguard Worker 1248*333d2b36SAndroid Build Coastguard Workerfunc TestSnapshotWithJavaSdkLibrary_AnnotationsZip_PreT(t *testing.T) { 1249*333d2b36SAndroid Build Coastguard Worker result := android.GroupFixturePreparers( 1250*333d2b36SAndroid Build Coastguard Worker prepareForSdkTestWithJavaSdkLibrary, 1251*333d2b36SAndroid Build Coastguard Worker android.FixtureMergeEnv(map[string]string{ 1252*333d2b36SAndroid Build Coastguard Worker "SOONG_SDK_SNAPSHOT_TARGET_BUILD_RELEASE": "S", 1253*333d2b36SAndroid Build Coastguard Worker }), 1254*333d2b36SAndroid Build Coastguard Worker ).RunTestWithBp(t, ` 1255*333d2b36SAndroid Build Coastguard Worker sdk { 1256*333d2b36SAndroid Build Coastguard Worker name: "mysdk", 1257*333d2b36SAndroid Build Coastguard Worker java_sdk_libs: ["myjavalib"], 1258*333d2b36SAndroid Build Coastguard Worker } 1259*333d2b36SAndroid Build Coastguard Worker 1260*333d2b36SAndroid Build Coastguard Worker java_sdk_library { 1261*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 1262*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 1263*333d2b36SAndroid Build Coastguard Worker sdk_version: "S", 1264*333d2b36SAndroid Build Coastguard Worker shared_library: false, 1265*333d2b36SAndroid Build Coastguard Worker annotations_enabled: true, 1266*333d2b36SAndroid Build Coastguard Worker public: { 1267*333d2b36SAndroid Build Coastguard Worker enabled: true, 1268*333d2b36SAndroid Build Coastguard Worker }, 1269*333d2b36SAndroid Build Coastguard Worker } 1270*333d2b36SAndroid Build Coastguard Worker `) 1271*333d2b36SAndroid Build Coastguard Worker 1272*333d2b36SAndroid Build Coastguard Worker CheckSnapshot(t, result, "mysdk", "", 1273*333d2b36SAndroid Build Coastguard Worker checkAndroidBpContents(` 1274*333d2b36SAndroid Build Coastguard Worker// This is auto-generated. DO NOT EDIT. 1275*333d2b36SAndroid Build Coastguard Worker 1276*333d2b36SAndroid Build Coastguard Workerapex_contributions_defaults { 1277*333d2b36SAndroid Build Coastguard Worker name: "mysdk.contributions", 1278*333d2b36SAndroid Build Coastguard Worker contents: ["prebuilt_myjavalib"], 1279*333d2b36SAndroid Build Coastguard Worker} 1280*333d2b36SAndroid Build Coastguard Worker 1281*333d2b36SAndroid Build Coastguard Workerjava_sdk_library_import { 1282*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 1283*333d2b36SAndroid Build Coastguard Worker prefer: false, 1284*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 1285*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:platform"], 1286*333d2b36SAndroid Build Coastguard Worker shared_library: false, 1287*333d2b36SAndroid Build Coastguard Worker public: { 1288*333d2b36SAndroid Build Coastguard Worker jars: ["sdk_library/public/myjavalib-stubs.jar"], 1289*333d2b36SAndroid Build Coastguard Worker stub_srcs: ["sdk_library/public/myjavalib_stub_sources"], 1290*333d2b36SAndroid Build Coastguard Worker current_api: "sdk_library/public/myjavalib.txt", 1291*333d2b36SAndroid Build Coastguard Worker removed_api: "sdk_library/public/myjavalib-removed.txt", 1292*333d2b36SAndroid Build Coastguard Worker sdk_version: "current", 1293*333d2b36SAndroid Build Coastguard Worker }, 1294*333d2b36SAndroid Build Coastguard Worker} 1295*333d2b36SAndroid Build Coastguard Worker `), 1296*333d2b36SAndroid Build Coastguard Worker checkAllCopyRules(` 1297*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.exportable/android_common/combined/myjavalib.stubs.exportable.jar -> sdk_library/public/myjavalib-stubs.jar 1298*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source/android_common/exportable/myjavalib.stubs.source_api.txt -> sdk_library/public/myjavalib.txt 1299*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source/android_common/exportable/myjavalib.stubs.source_removed.txt -> sdk_library/public/myjavalib-removed.txt 1300*333d2b36SAndroid Build Coastguard Worker `), 1301*333d2b36SAndroid Build Coastguard Worker checkMergeZips(".intermediates/mysdk/common_os/tmp/sdk_library/public/myjavalib_stub_sources.zip"), 1302*333d2b36SAndroid Build Coastguard Worker ) 1303*333d2b36SAndroid Build Coastguard Worker} 1304*333d2b36SAndroid Build Coastguard Worker 1305*333d2b36SAndroid Build Coastguard Workerfunc TestSnapshotWithJavaSdkLibrary_CompileDex(t *testing.T) { 1306*333d2b36SAndroid Build Coastguard Worker result := android.GroupFixturePreparers( 1307*333d2b36SAndroid Build Coastguard Worker prepareForSdkTestWithJavaSdkLibrary, 1308*333d2b36SAndroid Build Coastguard Worker android.PrepareForTestWithBuildFlag("RELEASE_HIDDEN_API_EXPORTABLE_STUBS", "true"), 1309*333d2b36SAndroid Build Coastguard Worker ).RunTestWithBp(t, ` 1310*333d2b36SAndroid Build Coastguard Worker sdk { 1311*333d2b36SAndroid Build Coastguard Worker name: "mysdk", 1312*333d2b36SAndroid Build Coastguard Worker java_sdk_libs: ["myjavalib"], 1313*333d2b36SAndroid Build Coastguard Worker } 1314*333d2b36SAndroid Build Coastguard Worker 1315*333d2b36SAndroid Build Coastguard Worker java_sdk_library { 1316*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 1317*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 1318*333d2b36SAndroid Build Coastguard Worker sdk_version: "current", 1319*333d2b36SAndroid Build Coastguard Worker shared_library: false, 1320*333d2b36SAndroid Build Coastguard Worker compile_dex: true, 1321*333d2b36SAndroid Build Coastguard Worker public: { 1322*333d2b36SAndroid Build Coastguard Worker enabled: true, 1323*333d2b36SAndroid Build Coastguard Worker }, 1324*333d2b36SAndroid Build Coastguard Worker system: { 1325*333d2b36SAndroid Build Coastguard Worker enabled: true, 1326*333d2b36SAndroid Build Coastguard Worker }, 1327*333d2b36SAndroid Build Coastguard Worker } 1328*333d2b36SAndroid Build Coastguard Worker `) 1329*333d2b36SAndroid Build Coastguard Worker 1330*333d2b36SAndroid Build Coastguard Worker CheckSnapshot(t, result, "mysdk", "", 1331*333d2b36SAndroid Build Coastguard Worker checkAndroidBpContents(` 1332*333d2b36SAndroid Build Coastguard Worker// This is auto-generated. DO NOT EDIT. 1333*333d2b36SAndroid Build Coastguard Worker 1334*333d2b36SAndroid Build Coastguard Workerapex_contributions_defaults { 1335*333d2b36SAndroid Build Coastguard Worker name: "mysdk.contributions", 1336*333d2b36SAndroid Build Coastguard Worker contents: ["prebuilt_myjavalib"], 1337*333d2b36SAndroid Build Coastguard Worker} 1338*333d2b36SAndroid Build Coastguard Worker 1339*333d2b36SAndroid Build Coastguard Workerjava_sdk_library_import { 1340*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 1341*333d2b36SAndroid Build Coastguard Worker prefer: false, 1342*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 1343*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:platform"], 1344*333d2b36SAndroid Build Coastguard Worker shared_library: false, 1345*333d2b36SAndroid Build Coastguard Worker compile_dex: true, 1346*333d2b36SAndroid Build Coastguard Worker public: { 1347*333d2b36SAndroid Build Coastguard Worker jars: ["sdk_library/public/myjavalib-stubs.jar"], 1348*333d2b36SAndroid Build Coastguard Worker stub_srcs: ["sdk_library/public/myjavalib_stub_sources"], 1349*333d2b36SAndroid Build Coastguard Worker current_api: "sdk_library/public/myjavalib.txt", 1350*333d2b36SAndroid Build Coastguard Worker removed_api: "sdk_library/public/myjavalib-removed.txt", 1351*333d2b36SAndroid Build Coastguard Worker sdk_version: "current", 1352*333d2b36SAndroid Build Coastguard Worker }, 1353*333d2b36SAndroid Build Coastguard Worker system: { 1354*333d2b36SAndroid Build Coastguard Worker jars: ["sdk_library/system/myjavalib-stubs.jar"], 1355*333d2b36SAndroid Build Coastguard Worker stub_srcs: ["sdk_library/system/myjavalib_stub_sources"], 1356*333d2b36SAndroid Build Coastguard Worker current_api: "sdk_library/system/myjavalib.txt", 1357*333d2b36SAndroid Build Coastguard Worker removed_api: "sdk_library/system/myjavalib-removed.txt", 1358*333d2b36SAndroid Build Coastguard Worker sdk_version: "system_current", 1359*333d2b36SAndroid Build Coastguard Worker }, 1360*333d2b36SAndroid Build Coastguard Worker} 1361*333d2b36SAndroid Build Coastguard Worker`), 1362*333d2b36SAndroid Build Coastguard Worker snapshotTestChecker(checkSnapshotWithSourcePreferred, func(t *testing.T, result *android.TestResult) { 1363*333d2b36SAndroid Build Coastguard Worker dexJarBuildPath := func(name string, kind android.SdkKind) string { 1364*333d2b36SAndroid Build Coastguard Worker sdkLibInfo, _ := android.OtherModuleProvider(result.TestContext.OtherModuleProviderAdaptor(), result.Module(name, "android_common"), java.SdkLibraryInfoProvider) 1365*333d2b36SAndroid Build Coastguard Worker path := sdkLibInfo.ExportableStubDexJarPaths[kind].Path() 1366*333d2b36SAndroid Build Coastguard Worker return path.RelativeToTop().String() 1367*333d2b36SAndroid Build Coastguard Worker } 1368*333d2b36SAndroid Build Coastguard Worker 1369*333d2b36SAndroid Build Coastguard Worker dexJarPath := dexJarBuildPath("myjavalib", android.SdkPublic) 1370*333d2b36SAndroid Build Coastguard Worker android.AssertStringEquals(t, "source dex public stubs jar build path", "out/soong/.intermediates/myjavalib.stubs.exportable/android_common/dex/myjavalib.stubs.exportable.jar", dexJarPath) 1371*333d2b36SAndroid Build Coastguard Worker 1372*333d2b36SAndroid Build Coastguard Worker dexJarPath = dexJarBuildPath("myjavalib", android.SdkSystem) 1373*333d2b36SAndroid Build Coastguard Worker systemDexJar := "out/soong/.intermediates/myjavalib.stubs.exportable.system/android_common/dex/myjavalib.stubs.exportable.system.jar" 1374*333d2b36SAndroid Build Coastguard Worker android.AssertStringEquals(t, "source dex system stubs jar build path", systemDexJar, dexJarPath) 1375*333d2b36SAndroid Build Coastguard Worker 1376*333d2b36SAndroid Build Coastguard Worker // This should fall back to system as module is not available. 1377*333d2b36SAndroid Build Coastguard Worker dexJarPath = dexJarBuildPath("myjavalib", android.SdkModule) 1378*333d2b36SAndroid Build Coastguard Worker android.AssertStringEquals(t, "source dex module stubs jar build path", systemDexJar, dexJarPath) 1379*333d2b36SAndroid Build Coastguard Worker 1380*333d2b36SAndroid Build Coastguard Worker // Prebuilt dex jar does not come from the exportable stubs. 1381*333d2b36SAndroid Build Coastguard Worker dexJarPath = dexJarBuildPath(android.PrebuiltNameFromSource("myjavalib"), android.SdkPublic) 1382*333d2b36SAndroid Build Coastguard Worker android.AssertStringEquals(t, "prebuilt dex public stubs jar build path", "out/soong/.intermediates/snapshot/prebuilt_myjavalib.stubs/android_common/dex/myjavalib.stubs.jar", dexJarPath) 1383*333d2b36SAndroid Build Coastguard Worker }), 1384*333d2b36SAndroid Build Coastguard Worker ) 1385*333d2b36SAndroid Build Coastguard Worker} 1386*333d2b36SAndroid Build Coastguard Worker 1387*333d2b36SAndroid Build Coastguard Workerfunc TestSnapshotWithJavaSdkLibrary_SdkVersion_None(t *testing.T) { 1388*333d2b36SAndroid Build Coastguard Worker result := android.GroupFixturePreparers(prepareForSdkTestWithJavaSdkLibrary).RunTestWithBp(t, ` 1389*333d2b36SAndroid Build Coastguard Worker sdk { 1390*333d2b36SAndroid Build Coastguard Worker name: "mysdk", 1391*333d2b36SAndroid Build Coastguard Worker java_sdk_libs: ["myjavalib"], 1392*333d2b36SAndroid Build Coastguard Worker } 1393*333d2b36SAndroid Build Coastguard Worker 1394*333d2b36SAndroid Build Coastguard Worker java_sdk_library { 1395*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 1396*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 1397*333d2b36SAndroid Build Coastguard Worker sdk_version: "none", 1398*333d2b36SAndroid Build Coastguard Worker system_modules: "none", 1399*333d2b36SAndroid Build Coastguard Worker } 1400*333d2b36SAndroid Build Coastguard Worker `) 1401*333d2b36SAndroid Build Coastguard Worker 1402*333d2b36SAndroid Build Coastguard Worker CheckSnapshot(t, result, "mysdk", "", 1403*333d2b36SAndroid Build Coastguard Worker checkAndroidBpContents(` 1404*333d2b36SAndroid Build Coastguard Worker// This is auto-generated. DO NOT EDIT. 1405*333d2b36SAndroid Build Coastguard Worker 1406*333d2b36SAndroid Build Coastguard Workerapex_contributions_defaults { 1407*333d2b36SAndroid Build Coastguard Worker name: "mysdk.contributions", 1408*333d2b36SAndroid Build Coastguard Worker contents: ["prebuilt_myjavalib"], 1409*333d2b36SAndroid Build Coastguard Worker} 1410*333d2b36SAndroid Build Coastguard Worker 1411*333d2b36SAndroid Build Coastguard Workerjava_sdk_library_import { 1412*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 1413*333d2b36SAndroid Build Coastguard Worker prefer: false, 1414*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 1415*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:platform"], 1416*333d2b36SAndroid Build Coastguard Worker shared_library: true, 1417*333d2b36SAndroid Build Coastguard Worker public: { 1418*333d2b36SAndroid Build Coastguard Worker jars: ["sdk_library/public/myjavalib-stubs.jar"], 1419*333d2b36SAndroid Build Coastguard Worker stub_srcs: ["sdk_library/public/myjavalib_stub_sources"], 1420*333d2b36SAndroid Build Coastguard Worker current_api: "sdk_library/public/myjavalib.txt", 1421*333d2b36SAndroid Build Coastguard Worker removed_api: "sdk_library/public/myjavalib-removed.txt", 1422*333d2b36SAndroid Build Coastguard Worker sdk_version: "none", 1423*333d2b36SAndroid Build Coastguard Worker }, 1424*333d2b36SAndroid Build Coastguard Worker} 1425*333d2b36SAndroid Build Coastguard Worker`), 1426*333d2b36SAndroid Build Coastguard Worker checkAllCopyRules(` 1427*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.exportable/android_common/combined/myjavalib.stubs.exportable.jar -> sdk_library/public/myjavalib-stubs.jar 1428*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source/android_common/exportable/myjavalib.stubs.source_api.txt -> sdk_library/public/myjavalib.txt 1429*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source/android_common/exportable/myjavalib.stubs.source_removed.txt -> sdk_library/public/myjavalib-removed.txt 1430*333d2b36SAndroid Build Coastguard Worker`), 1431*333d2b36SAndroid Build Coastguard Worker checkMergeZips( 1432*333d2b36SAndroid Build Coastguard Worker ".intermediates/mysdk/common_os/tmp/sdk_library/public/myjavalib_stub_sources.zip", 1433*333d2b36SAndroid Build Coastguard Worker ), 1434*333d2b36SAndroid Build Coastguard Worker ) 1435*333d2b36SAndroid Build Coastguard Worker} 1436*333d2b36SAndroid Build Coastguard Worker 1437*333d2b36SAndroid Build Coastguard Workerfunc TestSnapshotWithJavaSdkLibrary_SdkVersion_ForScope(t *testing.T) { 1438*333d2b36SAndroid Build Coastguard Worker result := android.GroupFixturePreparers(prepareForSdkTestWithJavaSdkLibrary).RunTestWithBp(t, ` 1439*333d2b36SAndroid Build Coastguard Worker sdk { 1440*333d2b36SAndroid Build Coastguard Worker name: "mysdk", 1441*333d2b36SAndroid Build Coastguard Worker java_sdk_libs: ["myjavalib"], 1442*333d2b36SAndroid Build Coastguard Worker } 1443*333d2b36SAndroid Build Coastguard Worker 1444*333d2b36SAndroid Build Coastguard Worker java_sdk_library { 1445*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 1446*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 1447*333d2b36SAndroid Build Coastguard Worker sdk_version: "module_current", 1448*333d2b36SAndroid Build Coastguard Worker public: { 1449*333d2b36SAndroid Build Coastguard Worker enabled: true, 1450*333d2b36SAndroid Build Coastguard Worker sdk_version: "module_current", 1451*333d2b36SAndroid Build Coastguard Worker }, 1452*333d2b36SAndroid Build Coastguard Worker } 1453*333d2b36SAndroid Build Coastguard Worker `) 1454*333d2b36SAndroid Build Coastguard Worker 1455*333d2b36SAndroid Build Coastguard Worker CheckSnapshot(t, result, "mysdk", "", 1456*333d2b36SAndroid Build Coastguard Worker checkAndroidBpContents(` 1457*333d2b36SAndroid Build Coastguard Worker// This is auto-generated. DO NOT EDIT. 1458*333d2b36SAndroid Build Coastguard Worker 1459*333d2b36SAndroid Build Coastguard Workerapex_contributions_defaults { 1460*333d2b36SAndroid Build Coastguard Worker name: "mysdk.contributions", 1461*333d2b36SAndroid Build Coastguard Worker contents: ["prebuilt_myjavalib"], 1462*333d2b36SAndroid Build Coastguard Worker} 1463*333d2b36SAndroid Build Coastguard Worker 1464*333d2b36SAndroid Build Coastguard Workerjava_sdk_library_import { 1465*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 1466*333d2b36SAndroid Build Coastguard Worker prefer: false, 1467*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 1468*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:platform"], 1469*333d2b36SAndroid Build Coastguard Worker shared_library: true, 1470*333d2b36SAndroid Build Coastguard Worker public: { 1471*333d2b36SAndroid Build Coastguard Worker jars: ["sdk_library/public/myjavalib-stubs.jar"], 1472*333d2b36SAndroid Build Coastguard Worker stub_srcs: ["sdk_library/public/myjavalib_stub_sources"], 1473*333d2b36SAndroid Build Coastguard Worker current_api: "sdk_library/public/myjavalib.txt", 1474*333d2b36SAndroid Build Coastguard Worker removed_api: "sdk_library/public/myjavalib-removed.txt", 1475*333d2b36SAndroid Build Coastguard Worker sdk_version: "module_current", 1476*333d2b36SAndroid Build Coastguard Worker }, 1477*333d2b36SAndroid Build Coastguard Worker} 1478*333d2b36SAndroid Build Coastguard Worker`), 1479*333d2b36SAndroid Build Coastguard Worker checkAllCopyRules(` 1480*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.exportable/android_common/combined/myjavalib.stubs.exportable.jar -> sdk_library/public/myjavalib-stubs.jar 1481*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source/android_common/exportable/myjavalib.stubs.source_api.txt -> sdk_library/public/myjavalib.txt 1482*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source/android_common/exportable/myjavalib.stubs.source_removed.txt -> sdk_library/public/myjavalib-removed.txt 1483*333d2b36SAndroid Build Coastguard Worker`), 1484*333d2b36SAndroid Build Coastguard Worker checkMergeZips( 1485*333d2b36SAndroid Build Coastguard Worker ".intermediates/mysdk/common_os/tmp/sdk_library/public/myjavalib_stub_sources.zip", 1486*333d2b36SAndroid Build Coastguard Worker ), 1487*333d2b36SAndroid Build Coastguard Worker ) 1488*333d2b36SAndroid Build Coastguard Worker} 1489*333d2b36SAndroid Build Coastguard Worker 1490*333d2b36SAndroid Build Coastguard Workerfunc TestSnapshotWithJavaSdkLibrary_ApiScopes(t *testing.T) { 1491*333d2b36SAndroid Build Coastguard Worker result := android.GroupFixturePreparers(prepareForSdkTestWithJavaSdkLibrary).RunTestWithBp(t, ` 1492*333d2b36SAndroid Build Coastguard Worker sdk { 1493*333d2b36SAndroid Build Coastguard Worker name: "mysdk", 1494*333d2b36SAndroid Build Coastguard Worker java_sdk_libs: ["myjavalib"], 1495*333d2b36SAndroid Build Coastguard Worker } 1496*333d2b36SAndroid Build Coastguard Worker 1497*333d2b36SAndroid Build Coastguard Worker java_sdk_library { 1498*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 1499*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:anyapex"], 1500*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 1501*333d2b36SAndroid Build Coastguard Worker sdk_version: "current", 1502*333d2b36SAndroid Build Coastguard Worker public: { 1503*333d2b36SAndroid Build Coastguard Worker enabled: true, 1504*333d2b36SAndroid Build Coastguard Worker }, 1505*333d2b36SAndroid Build Coastguard Worker system: { 1506*333d2b36SAndroid Build Coastguard Worker enabled: true, 1507*333d2b36SAndroid Build Coastguard Worker }, 1508*333d2b36SAndroid Build Coastguard Worker } 1509*333d2b36SAndroid Build Coastguard Worker `) 1510*333d2b36SAndroid Build Coastguard Worker 1511*333d2b36SAndroid Build Coastguard Worker CheckSnapshot(t, result, "mysdk", "", 1512*333d2b36SAndroid Build Coastguard Worker checkAndroidBpContents(` 1513*333d2b36SAndroid Build Coastguard Worker// This is auto-generated. DO NOT EDIT. 1514*333d2b36SAndroid Build Coastguard Worker 1515*333d2b36SAndroid Build Coastguard Workerapex_contributions_defaults { 1516*333d2b36SAndroid Build Coastguard Worker name: "mysdk.contributions", 1517*333d2b36SAndroid Build Coastguard Worker contents: ["prebuilt_myjavalib"], 1518*333d2b36SAndroid Build Coastguard Worker} 1519*333d2b36SAndroid Build Coastguard Worker 1520*333d2b36SAndroid Build Coastguard Workerjava_sdk_library_import { 1521*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 1522*333d2b36SAndroid Build Coastguard Worker prefer: false, 1523*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 1524*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:anyapex"], 1525*333d2b36SAndroid Build Coastguard Worker shared_library: true, 1526*333d2b36SAndroid Build Coastguard Worker public: { 1527*333d2b36SAndroid Build Coastguard Worker jars: ["sdk_library/public/myjavalib-stubs.jar"], 1528*333d2b36SAndroid Build Coastguard Worker stub_srcs: ["sdk_library/public/myjavalib_stub_sources"], 1529*333d2b36SAndroid Build Coastguard Worker current_api: "sdk_library/public/myjavalib.txt", 1530*333d2b36SAndroid Build Coastguard Worker removed_api: "sdk_library/public/myjavalib-removed.txt", 1531*333d2b36SAndroid Build Coastguard Worker sdk_version: "current", 1532*333d2b36SAndroid Build Coastguard Worker }, 1533*333d2b36SAndroid Build Coastguard Worker system: { 1534*333d2b36SAndroid Build Coastguard Worker jars: ["sdk_library/system/myjavalib-stubs.jar"], 1535*333d2b36SAndroid Build Coastguard Worker stub_srcs: ["sdk_library/system/myjavalib_stub_sources"], 1536*333d2b36SAndroid Build Coastguard Worker current_api: "sdk_library/system/myjavalib.txt", 1537*333d2b36SAndroid Build Coastguard Worker removed_api: "sdk_library/system/myjavalib-removed.txt", 1538*333d2b36SAndroid Build Coastguard Worker sdk_version: "system_current", 1539*333d2b36SAndroid Build Coastguard Worker }, 1540*333d2b36SAndroid Build Coastguard Worker} 1541*333d2b36SAndroid Build Coastguard Worker`), 1542*333d2b36SAndroid Build Coastguard Worker checkAllCopyRules(` 1543*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.exportable/android_common/combined/myjavalib.stubs.exportable.jar -> sdk_library/public/myjavalib-stubs.jar 1544*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source/android_common/exportable/myjavalib.stubs.source_api.txt -> sdk_library/public/myjavalib.txt 1545*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source/android_common/exportable/myjavalib.stubs.source_removed.txt -> sdk_library/public/myjavalib-removed.txt 1546*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.exportable.system/android_common/combined/myjavalib.stubs.exportable.system.jar -> sdk_library/system/myjavalib-stubs.jar 1547*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source.system/android_common/exportable/myjavalib.stubs.source.system_api.txt -> sdk_library/system/myjavalib.txt 1548*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source.system/android_common/exportable/myjavalib.stubs.source.system_removed.txt -> sdk_library/system/myjavalib-removed.txt 1549*333d2b36SAndroid Build Coastguard Worker`), 1550*333d2b36SAndroid Build Coastguard Worker checkMergeZips( 1551*333d2b36SAndroid Build Coastguard Worker ".intermediates/mysdk/common_os/tmp/sdk_library/public/myjavalib_stub_sources.zip", 1552*333d2b36SAndroid Build Coastguard Worker ".intermediates/mysdk/common_os/tmp/sdk_library/system/myjavalib_stub_sources.zip", 1553*333d2b36SAndroid Build Coastguard Worker ), 1554*333d2b36SAndroid Build Coastguard Worker ) 1555*333d2b36SAndroid Build Coastguard Worker} 1556*333d2b36SAndroid Build Coastguard Worker 1557*333d2b36SAndroid Build Coastguard Workerfunc TestSnapshotWithJavaSdkLibrary_ModuleLib(t *testing.T) { 1558*333d2b36SAndroid Build Coastguard Worker result := android.GroupFixturePreparers(prepareForSdkTestWithJavaSdkLibrary).RunTestWithBp(t, ` 1559*333d2b36SAndroid Build Coastguard Worker sdk { 1560*333d2b36SAndroid Build Coastguard Worker name: "mysdk", 1561*333d2b36SAndroid Build Coastguard Worker java_sdk_libs: ["myjavalib"], 1562*333d2b36SAndroid Build Coastguard Worker } 1563*333d2b36SAndroid Build Coastguard Worker 1564*333d2b36SAndroid Build Coastguard Worker java_sdk_library { 1565*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 1566*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:anyapex"], 1567*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 1568*333d2b36SAndroid Build Coastguard Worker sdk_version: "current", 1569*333d2b36SAndroid Build Coastguard Worker public: { 1570*333d2b36SAndroid Build Coastguard Worker enabled: true, 1571*333d2b36SAndroid Build Coastguard Worker }, 1572*333d2b36SAndroid Build Coastguard Worker system: { 1573*333d2b36SAndroid Build Coastguard Worker enabled: true, 1574*333d2b36SAndroid Build Coastguard Worker }, 1575*333d2b36SAndroid Build Coastguard Worker module_lib: { 1576*333d2b36SAndroid Build Coastguard Worker enabled: true, 1577*333d2b36SAndroid Build Coastguard Worker }, 1578*333d2b36SAndroid Build Coastguard Worker } 1579*333d2b36SAndroid Build Coastguard Worker `) 1580*333d2b36SAndroid Build Coastguard Worker 1581*333d2b36SAndroid Build Coastguard Worker CheckSnapshot(t, result, "mysdk", "", 1582*333d2b36SAndroid Build Coastguard Worker checkAndroidBpContents(` 1583*333d2b36SAndroid Build Coastguard Worker// This is auto-generated. DO NOT EDIT. 1584*333d2b36SAndroid Build Coastguard Worker 1585*333d2b36SAndroid Build Coastguard Workerapex_contributions_defaults { 1586*333d2b36SAndroid Build Coastguard Worker name: "mysdk.contributions", 1587*333d2b36SAndroid Build Coastguard Worker contents: ["prebuilt_myjavalib"], 1588*333d2b36SAndroid Build Coastguard Worker} 1589*333d2b36SAndroid Build Coastguard Worker 1590*333d2b36SAndroid Build Coastguard Workerjava_sdk_library_import { 1591*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 1592*333d2b36SAndroid Build Coastguard Worker prefer: false, 1593*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 1594*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:anyapex"], 1595*333d2b36SAndroid Build Coastguard Worker shared_library: true, 1596*333d2b36SAndroid Build Coastguard Worker public: { 1597*333d2b36SAndroid Build Coastguard Worker jars: ["sdk_library/public/myjavalib-stubs.jar"], 1598*333d2b36SAndroid Build Coastguard Worker stub_srcs: ["sdk_library/public/myjavalib_stub_sources"], 1599*333d2b36SAndroid Build Coastguard Worker current_api: "sdk_library/public/myjavalib.txt", 1600*333d2b36SAndroid Build Coastguard Worker removed_api: "sdk_library/public/myjavalib-removed.txt", 1601*333d2b36SAndroid Build Coastguard Worker sdk_version: "current", 1602*333d2b36SAndroid Build Coastguard Worker }, 1603*333d2b36SAndroid Build Coastguard Worker system: { 1604*333d2b36SAndroid Build Coastguard Worker jars: ["sdk_library/system/myjavalib-stubs.jar"], 1605*333d2b36SAndroid Build Coastguard Worker stub_srcs: ["sdk_library/system/myjavalib_stub_sources"], 1606*333d2b36SAndroid Build Coastguard Worker current_api: "sdk_library/system/myjavalib.txt", 1607*333d2b36SAndroid Build Coastguard Worker removed_api: "sdk_library/system/myjavalib-removed.txt", 1608*333d2b36SAndroid Build Coastguard Worker sdk_version: "system_current", 1609*333d2b36SAndroid Build Coastguard Worker }, 1610*333d2b36SAndroid Build Coastguard Worker module_lib: { 1611*333d2b36SAndroid Build Coastguard Worker jars: ["sdk_library/module-lib/myjavalib-stubs.jar"], 1612*333d2b36SAndroid Build Coastguard Worker stub_srcs: ["sdk_library/module-lib/myjavalib_stub_sources"], 1613*333d2b36SAndroid Build Coastguard Worker current_api: "sdk_library/module-lib/myjavalib.txt", 1614*333d2b36SAndroid Build Coastguard Worker removed_api: "sdk_library/module-lib/myjavalib-removed.txt", 1615*333d2b36SAndroid Build Coastguard Worker sdk_version: "module_current", 1616*333d2b36SAndroid Build Coastguard Worker }, 1617*333d2b36SAndroid Build Coastguard Worker} 1618*333d2b36SAndroid Build Coastguard Worker`), 1619*333d2b36SAndroid Build Coastguard Worker checkAllCopyRules(` 1620*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.exportable/android_common/combined/myjavalib.stubs.exportable.jar -> sdk_library/public/myjavalib-stubs.jar 1621*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source/android_common/exportable/myjavalib.stubs.source_api.txt -> sdk_library/public/myjavalib.txt 1622*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source/android_common/exportable/myjavalib.stubs.source_removed.txt -> sdk_library/public/myjavalib-removed.txt 1623*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.exportable.system/android_common/combined/myjavalib.stubs.exportable.system.jar -> sdk_library/system/myjavalib-stubs.jar 1624*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source.system/android_common/exportable/myjavalib.stubs.source.system_api.txt -> sdk_library/system/myjavalib.txt 1625*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source.system/android_common/exportable/myjavalib.stubs.source.system_removed.txt -> sdk_library/system/myjavalib-removed.txt 1626*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.exportable.module_lib/android_common/combined/myjavalib.stubs.exportable.module_lib.jar -> sdk_library/module-lib/myjavalib-stubs.jar 1627*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source.module_lib/android_common/exportable/myjavalib.stubs.source.module_lib_api.txt -> sdk_library/module-lib/myjavalib.txt 1628*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source.module_lib/android_common/exportable/myjavalib.stubs.source.module_lib_removed.txt -> sdk_library/module-lib/myjavalib-removed.txt 1629*333d2b36SAndroid Build Coastguard Worker`), 1630*333d2b36SAndroid Build Coastguard Worker checkMergeZips( 1631*333d2b36SAndroid Build Coastguard Worker ".intermediates/mysdk/common_os/tmp/sdk_library/module-lib/myjavalib_stub_sources.zip", 1632*333d2b36SAndroid Build Coastguard Worker ".intermediates/mysdk/common_os/tmp/sdk_library/public/myjavalib_stub_sources.zip", 1633*333d2b36SAndroid Build Coastguard Worker ".intermediates/mysdk/common_os/tmp/sdk_library/system/myjavalib_stub_sources.zip", 1634*333d2b36SAndroid Build Coastguard Worker ), 1635*333d2b36SAndroid Build Coastguard Worker ) 1636*333d2b36SAndroid Build Coastguard Worker} 1637*333d2b36SAndroid Build Coastguard Worker 1638*333d2b36SAndroid Build Coastguard Workerfunc TestSnapshotWithJavaSdkLibrary_SystemServer(t *testing.T) { 1639*333d2b36SAndroid Build Coastguard Worker result := android.GroupFixturePreparers(prepareForSdkTestWithJavaSdkLibrary).RunTestWithBp(t, ` 1640*333d2b36SAndroid Build Coastguard Worker sdk { 1641*333d2b36SAndroid Build Coastguard Worker name: "mysdk", 1642*333d2b36SAndroid Build Coastguard Worker java_sdk_libs: ["myjavalib"], 1643*333d2b36SAndroid Build Coastguard Worker } 1644*333d2b36SAndroid Build Coastguard Worker 1645*333d2b36SAndroid Build Coastguard Worker java_sdk_library { 1646*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 1647*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:anyapex"], 1648*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 1649*333d2b36SAndroid Build Coastguard Worker sdk_version: "current", 1650*333d2b36SAndroid Build Coastguard Worker public: { 1651*333d2b36SAndroid Build Coastguard Worker enabled: true, 1652*333d2b36SAndroid Build Coastguard Worker }, 1653*333d2b36SAndroid Build Coastguard Worker system_server: { 1654*333d2b36SAndroid Build Coastguard Worker enabled: true, 1655*333d2b36SAndroid Build Coastguard Worker }, 1656*333d2b36SAndroid Build Coastguard Worker } 1657*333d2b36SAndroid Build Coastguard Worker `) 1658*333d2b36SAndroid Build Coastguard Worker 1659*333d2b36SAndroid Build Coastguard Worker CheckSnapshot(t, result, "mysdk", "", 1660*333d2b36SAndroid Build Coastguard Worker checkAndroidBpContents(` 1661*333d2b36SAndroid Build Coastguard Worker// This is auto-generated. DO NOT EDIT. 1662*333d2b36SAndroid Build Coastguard Worker 1663*333d2b36SAndroid Build Coastguard Workerapex_contributions_defaults { 1664*333d2b36SAndroid Build Coastguard Worker name: "mysdk.contributions", 1665*333d2b36SAndroid Build Coastguard Worker contents: ["prebuilt_myjavalib"], 1666*333d2b36SAndroid Build Coastguard Worker} 1667*333d2b36SAndroid Build Coastguard Worker 1668*333d2b36SAndroid Build Coastguard Workerjava_sdk_library_import { 1669*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 1670*333d2b36SAndroid Build Coastguard Worker prefer: false, 1671*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 1672*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:anyapex"], 1673*333d2b36SAndroid Build Coastguard Worker shared_library: true, 1674*333d2b36SAndroid Build Coastguard Worker public: { 1675*333d2b36SAndroid Build Coastguard Worker jars: ["sdk_library/public/myjavalib-stubs.jar"], 1676*333d2b36SAndroid Build Coastguard Worker stub_srcs: ["sdk_library/public/myjavalib_stub_sources"], 1677*333d2b36SAndroid Build Coastguard Worker current_api: "sdk_library/public/myjavalib.txt", 1678*333d2b36SAndroid Build Coastguard Worker removed_api: "sdk_library/public/myjavalib-removed.txt", 1679*333d2b36SAndroid Build Coastguard Worker sdk_version: "current", 1680*333d2b36SAndroid Build Coastguard Worker }, 1681*333d2b36SAndroid Build Coastguard Worker system_server: { 1682*333d2b36SAndroid Build Coastguard Worker jars: ["sdk_library/system-server/myjavalib-stubs.jar"], 1683*333d2b36SAndroid Build Coastguard Worker stub_srcs: ["sdk_library/system-server/myjavalib_stub_sources"], 1684*333d2b36SAndroid Build Coastguard Worker current_api: "sdk_library/system-server/myjavalib.txt", 1685*333d2b36SAndroid Build Coastguard Worker removed_api: "sdk_library/system-server/myjavalib-removed.txt", 1686*333d2b36SAndroid Build Coastguard Worker sdk_version: "system_server_current", 1687*333d2b36SAndroid Build Coastguard Worker }, 1688*333d2b36SAndroid Build Coastguard Worker} 1689*333d2b36SAndroid Build Coastguard Worker`), 1690*333d2b36SAndroid Build Coastguard Worker checkAllCopyRules(` 1691*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.exportable/android_common/combined/myjavalib.stubs.exportable.jar -> sdk_library/public/myjavalib-stubs.jar 1692*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source/android_common/exportable/myjavalib.stubs.source_api.txt -> sdk_library/public/myjavalib.txt 1693*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source/android_common/exportable/myjavalib.stubs.source_removed.txt -> sdk_library/public/myjavalib-removed.txt 1694*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.exportable.system_server/android_common/combined/myjavalib.stubs.exportable.system_server.jar -> sdk_library/system-server/myjavalib-stubs.jar 1695*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source.system_server/android_common/exportable/myjavalib.stubs.source.system_server_api.txt -> sdk_library/system-server/myjavalib.txt 1696*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source.system_server/android_common/exportable/myjavalib.stubs.source.system_server_removed.txt -> sdk_library/system-server/myjavalib-removed.txt 1697*333d2b36SAndroid Build Coastguard Worker`), 1698*333d2b36SAndroid Build Coastguard Worker checkMergeZips( 1699*333d2b36SAndroid Build Coastguard Worker ".intermediates/mysdk/common_os/tmp/sdk_library/public/myjavalib_stub_sources.zip", 1700*333d2b36SAndroid Build Coastguard Worker ".intermediates/mysdk/common_os/tmp/sdk_library/system-server/myjavalib_stub_sources.zip", 1701*333d2b36SAndroid Build Coastguard Worker ), 1702*333d2b36SAndroid Build Coastguard Worker ) 1703*333d2b36SAndroid Build Coastguard Worker} 1704*333d2b36SAndroid Build Coastguard Worker 1705*333d2b36SAndroid Build Coastguard Workerfunc TestSnapshotWithJavaSdkLibrary_DoctagFiles(t *testing.T) { 1706*333d2b36SAndroid Build Coastguard Worker result := android.GroupFixturePreparers( 1707*333d2b36SAndroid Build Coastguard Worker prepareForSdkTestWithJavaSdkLibrary, 1708*333d2b36SAndroid Build Coastguard Worker android.FixtureAddFile("docs/known_doctags", nil), 1709*333d2b36SAndroid Build Coastguard Worker ).RunTestWithBp(t, ` 1710*333d2b36SAndroid Build Coastguard Worker sdk { 1711*333d2b36SAndroid Build Coastguard Worker name: "mysdk", 1712*333d2b36SAndroid Build Coastguard Worker java_sdk_libs: ["myjavalib"], 1713*333d2b36SAndroid Build Coastguard Worker } 1714*333d2b36SAndroid Build Coastguard Worker 1715*333d2b36SAndroid Build Coastguard Worker java_sdk_library { 1716*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 1717*333d2b36SAndroid Build Coastguard Worker srcs: ["Test.java"], 1718*333d2b36SAndroid Build Coastguard Worker sdk_version: "current", 1719*333d2b36SAndroid Build Coastguard Worker public: { 1720*333d2b36SAndroid Build Coastguard Worker enabled: true, 1721*333d2b36SAndroid Build Coastguard Worker }, 1722*333d2b36SAndroid Build Coastguard Worker doctag_files: ["docs/known_doctags"], 1723*333d2b36SAndroid Build Coastguard Worker } 1724*333d2b36SAndroid Build Coastguard Worker 1725*333d2b36SAndroid Build Coastguard Worker filegroup { 1726*333d2b36SAndroid Build Coastguard Worker name: "mygroup", 1727*333d2b36SAndroid Build Coastguard Worker device_common_srcs: [":myjavalib{.doctags}"], 1728*333d2b36SAndroid Build Coastguard Worker } 1729*333d2b36SAndroid Build Coastguard Worker `) 1730*333d2b36SAndroid Build Coastguard Worker 1731*333d2b36SAndroid Build Coastguard Worker CheckSnapshot(t, result, "mysdk", "", 1732*333d2b36SAndroid Build Coastguard Worker checkAndroidBpContents(` 1733*333d2b36SAndroid Build Coastguard Worker// This is auto-generated. DO NOT EDIT. 1734*333d2b36SAndroid Build Coastguard Worker 1735*333d2b36SAndroid Build Coastguard Workerapex_contributions_defaults { 1736*333d2b36SAndroid Build Coastguard Worker name: "mysdk.contributions", 1737*333d2b36SAndroid Build Coastguard Worker contents: ["prebuilt_myjavalib"], 1738*333d2b36SAndroid Build Coastguard Worker} 1739*333d2b36SAndroid Build Coastguard Worker 1740*333d2b36SAndroid Build Coastguard Workerjava_sdk_library_import { 1741*333d2b36SAndroid Build Coastguard Worker name: "myjavalib", 1742*333d2b36SAndroid Build Coastguard Worker prefer: false, 1743*333d2b36SAndroid Build Coastguard Worker visibility: ["//visibility:public"], 1744*333d2b36SAndroid Build Coastguard Worker apex_available: ["//apex_available:platform"], 1745*333d2b36SAndroid Build Coastguard Worker shared_library: true, 1746*333d2b36SAndroid Build Coastguard Worker doctag_files: ["doctags/docs/known_doctags"], 1747*333d2b36SAndroid Build Coastguard Worker public: { 1748*333d2b36SAndroid Build Coastguard Worker jars: ["sdk_library/public/myjavalib-stubs.jar"], 1749*333d2b36SAndroid Build Coastguard Worker stub_srcs: ["sdk_library/public/myjavalib_stub_sources"], 1750*333d2b36SAndroid Build Coastguard Worker current_api: "sdk_library/public/myjavalib.txt", 1751*333d2b36SAndroid Build Coastguard Worker removed_api: "sdk_library/public/myjavalib-removed.txt", 1752*333d2b36SAndroid Build Coastguard Worker sdk_version: "current", 1753*333d2b36SAndroid Build Coastguard Worker }, 1754*333d2b36SAndroid Build Coastguard Worker} 1755*333d2b36SAndroid Build Coastguard Worker`), 1756*333d2b36SAndroid Build Coastguard Worker checkAllCopyRules(` 1757*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.exportable/android_common/combined/myjavalib.stubs.exportable.jar -> sdk_library/public/myjavalib-stubs.jar 1758*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source/android_common/exportable/myjavalib.stubs.source_api.txt -> sdk_library/public/myjavalib.txt 1759*333d2b36SAndroid Build Coastguard Worker.intermediates/myjavalib.stubs.source/android_common/exportable/myjavalib.stubs.source_removed.txt -> sdk_library/public/myjavalib-removed.txt 1760*333d2b36SAndroid Build Coastguard Workerdocs/known_doctags -> doctags/docs/known_doctags 1761*333d2b36SAndroid Build Coastguard Worker`), 1762*333d2b36SAndroid Build Coastguard Worker ) 1763*333d2b36SAndroid Build Coastguard Worker} 1764