1load("@bazel_skylib//rules:diff_test.bzl", "diff_test") 2load(":apex_compression_test.bzl", "apex_compression_test") 3load(":apex_diff_test.bzl", "apex_diff_test") 4load(":apex_package_name_test.bzl", "apex_package_name_test") 5 6filegroup( 7 name = "com.android.adbd.capex", 8 srcs = ["//packages/modules/adb/apex:com.android.adbd"], 9 output_group = "signed_compressed_output", 10 tags = ["manual"], 11) 12 13# Test that the compressed apex and uncompressed apex have the same contents 14apex_diff_test( 15 name = "com.android.adbd_compressed_vs_uncompressed", 16 apex1 = ":com.android.adbd.capex", 17 apex2 = "//packages/modules/adb/apex:com.android.adbd", 18 target_compatible_with = ["//build/bazel/platforms/os:android"], 19) 20 21apex_compression_test( 22 name = "build.bazel.examples.apex.minimal_apex", 23 apex = "//build/bazel/examples/apex/minimal:build.bazel.examples.apex.minimal", 24 compressed = False, 25) 26 27filegroup( 28 name = "build.bazel.examples.apex.minimal_compressed.capex", 29 srcs = ["//build/bazel/examples/apex/minimal:build.bazel.examples.apex.minimal_compressed"], 30 output_group = "signed_compressed_output", 31 tags = ["manual"], 32) 33 34apex_compression_test( 35 name = "build.bazel.examples.apex.minimal_capex", 36 apex = ":build.bazel.examples.apex.minimal_compressed.capex", 37 compressed = True, 38) 39 40genrule( 41 name = "build.bazel.examples.apex.minimal_android_manifest", 42 testonly = True, 43 srcs = ["//build/bazel/examples/apex/minimal:build.bazel.examples.apex.minimal"], 44 outs = ["minimal_apex_android_manifest.txt"], 45 cmd = "$(location //frameworks/base/tools/aapt2) dump xmltree --file AndroidManifest.xml $< > $@", 46 tools = ["//frameworks/base/tools/aapt2"], 47) 48 49diff_test( 50 name = "minimal_apex_android_manifest_test", 51 file1 = "minimal_apex_android_manifest.txt", 52 file2 = "minimal_apex_android_manifest.golden", 53) 54 55genrule( 56 name = "adbd_aab_zipinfo", 57 testonly = True, 58 srcs = ["//build/bazel/vendor/google:com.android.adbd_apex_aab"], 59 outs = ["adbd_aab_zipinfo.actual"], 60 cmd = "$(location @bazel_tools//tools/zip:zipper) v $< | sort > $@", 61 tools = ["@bazel_tools//tools/zip:zipper"], 62) 63 64diff_test( 65 name = "aab_filelist_diff_test", 66 file1 = "adbd_aab_zipinfo.golden", 67 file2 = "adbd_aab_zipinfo.actual", 68) 69 70py_binary( 71 name = "apks_binary_arches", 72 srcs = ["apks_binary_arches.py"], 73) 74 75genrule( 76 name = "adbd_apks_arches", 77 testonly = True, 78 srcs = ["//build/bazel/vendor/google:com.android.adbd_apks"], 79 outs = ["adb_apks_arches.actual"], 80 cmd = " ".join([ 81 "$(location :apks_binary_arches)", 82 "--deapexer-path $(location //system/apex/tools:deapexer)", 83 "--readelf-path $(location //prebuilts/clang/host/linux-x86:llvm-readelf)", 84 "--debugfs-path $(location //external/e2fsprogs/debugfs)", 85 "--blkid-path $(location //external/e2fsprogs/misc:blkid)", 86 "--fsckerofs-path $(location //external/erofs-utils:fsck.erofs)", 87 "$<", 88 "$@", 89 ]), 90 tags = ["manual"], 91 tools = [ 92 ":apks_binary_arches", 93 "//external/e2fsprogs/debugfs", 94 "//external/e2fsprogs/misc:blkid", 95 "//external/erofs-utils:fsck.erofs", 96 "//prebuilts/clang/host/linux-x86:llvm-readelf", 97 "//system/apex/tools:deapexer", 98 ], 99) 100 101diff_test( 102 name = "apks_arch_diff_test", 103 file1 = "adb_apks_arches.golden", 104 file2 = "adb_apks_arches.actual", 105) 106 107genrule( 108 name = "adbd_apks_zipinfo", 109 testonly = True, 110 srcs = ["//build/bazel/vendor/google:com.android.adbd_apks"], 111 outs = ["adbd_apks_zipinfo.actual"], 112 cmd = "$(location @bazel_tools//tools/zip:zipper) v $< | sort > $@", 113 tools = ["@bazel_tools//tools/zip:zipper"], 114) 115 116diff_test( 117 name = "apks_filelist_diff_test", 118 file1 = "adbd_apks_zipinfo.golden", 119 file2 = "adbd_apks_zipinfo.actual", 120) 121 122apex_package_name_test( 123 name = "build.bazel.examples.apex.minimal_package_name", 124 apex = "//build/bazel/examples/apex/minimal:build.bazel.examples.apex.minimal", 125 expected_package_name = "build.bazel.examples.apex.minimal", 126) 127 128apex_package_name_test( 129 name = "build.bazel.examples.apex.override.minimal_package_name", 130 apex = "//build/bazel/examples/apex/minimal:build.bazel.examples.apex.override.minimal", 131 expected_package_name = "build.bazel.examples.apex.override.minimal", 132) 133 134apex_package_name_test( 135 name = "com.android.adbd_package_name", 136 apex = "//packages/modules/adb/apex:com.android.adbd", 137 expected_package_name = "com.android.adbd", 138) 139 140genrule( 141 name = "com.android.adbd_manifest_json", 142 srcs = ["//packages/modules/adb/apex:com.android.adbd"], 143 outs = ["com.android.adbd_manifest.json"], 144 cmd = "$(location //system/apex/tools:deapexer) info $< > $@", 145 tools = ["//system/apex/tools:deapexer"], 146) 147 148diff_test( 149 name = "com.android.adbd_manifest_diff_test", 150 file1 = "com.android.adbd_manifest.json", 151 file2 = "com.android.adbd_manifest.json.golden", 152) 153 154filegroup( 155 name = "minimal_apex_coverage_files", 156 srcs = ["//build/bazel/examples/apex/minimal:build.bazel.examples.apex.minimal"], 157 output_group = "coverage_files", 158) 159 160genrule( 161 name = "minimal_apex_using_txt", 162 srcs = [":minimal_apex_coverage_files"], 163 outs = ["minimal_apex_using.txt"], 164 cmd = "cat $(location :minimal_apex_coverage_files) | sort > $@", 165) 166 167diff_test( 168 name = "minimal_apex_symbols_used_by_apex_diff_test", 169 file1 = ":minimal_apex_using.txt", 170 file2 = ":minimal_apex_using.txt.golden", 171 target_compatible_with = [ 172 "//build/bazel/platforms/os:android", 173 "//build/bazel/platforms/arch:arm64", 174 ], 175) 176 177filegroup( 178 name = "minimal_apex_java_coverage_files", 179 srcs = ["//build/bazel/examples/apex/minimal:build.bazel.examples.apex.minimal"], 180 output_group = "java_coverage_files", 181) 182 183genrule( 184 name = "minimal_apex_using_xml", 185 srcs = [":minimal_apex_java_coverage_files"], 186 outs = ["minimal_apex_using.xml"], 187 cmd = "cat $(location :minimal_apex_java_coverage_files) | sort > $@", 188) 189 190diff_test( 191 name = "minimal_apex_java_symbols_used_by_apex_diff_test", 192 file1 = ":minimal_apex_using.xml", 193 file2 = ":minimal_apex_using.xml.golden", 194 target_compatible_with = [ 195 "//build/bazel/platforms/os:android", 196 "//build/bazel/platforms/arch:arm64", 197 ], 198) 199 200filegroup( 201 name = "com.android.adbd_backing_libs", 202 srcs = ["//packages/modules/adb/apex:com.android.adbd"], 203 output_group = "backing_libs", 204) 205 206diff_test( 207 name = "com.android.adbd_backing_libs_diff_test", 208 file1 = ":com.android.adbd_backing_libs", 209 file2 = "com.android.adbd_backing.txt.golden", 210) 211 212filegroup( 213 name = "com.android.adbd_installed_files", 214 srcs = ["//packages/modules/adb/apex:com.android.adbd"], 215 output_group = "installed_files", 216) 217