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_common_rules/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 "--fsckerofs-path $(location //external/erofs-utils:fsck.erofs)", 86 "$<", 87 "$@", 88 ]), 89 tags = ["manual"], 90 tools = [ 91 ":apks_binary_arches", 92 "//external/e2fsprogs/debugfs", 93 "//external/erofs-utils:fsck.erofs", 94 "//prebuilts/clang/host/linux-x86:llvm-readelf", 95 "//system/apex/tools:deapexer", 96 ], 97) 98 99diff_test( 100 name = "apks_arch_diff_test", 101 file1 = "adb_apks_arches.golden", 102 file2 = "adb_apks_arches.actual", 103) 104 105genrule( 106 name = "adbd_apks_zipinfo", 107 testonly = True, 108 srcs = ["//build/bazel/vendor/google:com.android.adbd_apks"], 109 outs = ["adbd_apks_zipinfo.actual"], 110 cmd = "$(location @bazel_tools//tools/zip:zipper) v $< | sort > $@", 111 tools = ["@bazel_tools//tools/zip:zipper"], 112) 113 114diff_test( 115 name = "apks_filelist_diff_test", 116 file1 = "adbd_apks_zipinfo.golden", 117 file2 = "adbd_apks_zipinfo.actual", 118) 119 120apex_package_name_test( 121 name = "build.bazel.examples.apex.minimal_package_name", 122 apex = "//build/bazel/examples/apex/minimal:build.bazel.examples.apex.minimal", 123 expected_package_name = "build.bazel.examples.apex.minimal", 124) 125 126apex_package_name_test( 127 name = "build.bazel.examples.apex.override.minimal_package_name", 128 apex = "//build/bazel/examples/apex/minimal:build.bazel.examples.apex.override.minimal", 129 expected_package_name = "build.bazel.examples.apex.override.minimal", 130) 131 132apex_package_name_test( 133 name = "com.android.adbd_package_name", 134 apex = "//packages/modules/adb/apex:com.android.adbd", 135 expected_package_name = "com.android.adbd", 136) 137 138genrule( 139 name = "com.android.adbd_manifest_json", 140 srcs = ["//packages/modules/adb/apex:com.android.adbd"], 141 outs = ["com.android.adbd_manifest.json"], 142 cmd = "$(location //system/apex/tools:deapexer) info $< > $@", 143 tools = ["//system/apex/tools:deapexer"], 144) 145 146diff_test( 147 name = "com.android.adbd_manifest_diff_test", 148 file1 = "com.android.adbd_manifest.json", 149 file2 = "com.android.adbd_manifest.json.golden", 150) 151 152filegroup( 153 name = "minimal_apex_coverage_files", 154 srcs = ["//build/bazel/examples/apex/minimal:build.bazel.examples.apex.minimal"], 155 output_group = "coverage_files", 156) 157 158genrule( 159 name = "minimal_apex_using_txt", 160 srcs = [":minimal_apex_coverage_files"], 161 outs = ["minimal_apex_using.txt"], 162 cmd = "cat $(location :minimal_apex_coverage_files) | sort > $@", 163) 164 165diff_test( 166 name = "minimal_apex_symbols_used_by_apex_diff_test", 167 file1 = ":minimal_apex_using.txt", 168 file2 = ":minimal_apex_using.txt.golden", 169 target_compatible_with = [ 170 "//build/bazel_common_rules/platforms/os:android", 171 "//build/bazel_common_rules/platforms/arch:arm64", 172 ], 173) 174 175filegroup( 176 name = "minimal_apex_java_coverage_files", 177 srcs = ["//build/bazel/examples/apex/minimal:build.bazel.examples.apex.minimal"], 178 output_group = "java_coverage_files", 179) 180 181genrule( 182 name = "minimal_apex_using_xml", 183 srcs = [":minimal_apex_java_coverage_files"], 184 outs = ["minimal_apex_using.xml"], 185 cmd = "cat $(location :minimal_apex_java_coverage_files) | sort > $@", 186) 187 188diff_test( 189 name = "minimal_apex_java_symbols_used_by_apex_diff_test", 190 file1 = ":minimal_apex_using.xml", 191 file2 = ":minimal_apex_using.xml.golden", 192 target_compatible_with = [ 193 "//build/bazel_common_rules/platforms/os:android", 194 "//build/bazel_common_rules/platforms/arch:arm64", 195 ], 196) 197 198filegroup( 199 name = "com.android.adbd_backing_libs", 200 srcs = ["//packages/modules/adb/apex:com.android.adbd"], 201 output_group = "backing_libs", 202) 203 204diff_test( 205 name = "com.android.adbd_backing_libs_diff_test", 206 file1 = ":com.android.adbd_backing_libs", 207 file2 = "com.android.adbd_backing.txt.golden", 208) 209 210filegroup( 211 name = "com.android.adbd_installed_files", 212 srcs = ["//packages/modules/adb/apex:com.android.adbd"], 213 output_group = "installed_files", 214) 215