load("@rules_java//java:defs.bzl", "java_library", "java_test") package( default_testonly = 1, default_visibility = ["//src:__subpackages__"], ) filegroup( name = "srcs", testonly = 0, srcs = glob(["**"]), visibility = ["//src/test/java/com/google/devtools/build/android:__pkg__"], ) # Description: # Tests for the blaze dx bridge code. java_library( name = "tests", srcs = [ "AllTests.java", ] + select({ "//external:has_androidsdk": glob( ["*Test.java"], exclude = [ "NoAndroidSdkStubTest.java", "AllTests.java", ], ), "//conditions:default": ["NoAndroidSdkStubTest.java"], }), javacopts = ["-source 7 -target 7"], # we run this through dx for testing, so no lambdas! resources = ["testresource.txt"], deps = [ "//src/test/java/com/google/devtools/build/lib/testutil", "//src/test/java/com/google/devtools/build/lib/testutil:TestSuite", "//src/tools/android/java/com/google/devtools/build/android/dexer", "//third_party:guava", "//third_party:junit4", "//third_party:mockito", "//third_party:truth", "@bazel_tools//tools/java/runfiles", ] + select({ "//external:has_androidsdk": ["//external:android/dx_jar_import"], "//conditions:default": [], }), ) java_library( name = "testdata", srcs = glob(["testdata/**/*.java"]), ) java_test( name = "AllTests", size = "small", data = [ "test_main_dex_list.txt", ":mixed_testinput", ":testdata", ":tests", ], jvm_flags = [ "-Dtestmaindexlist=io_bazel/$(location :test_main_dex_list.txt)", "-Dtestinputjar=io_bazel/$(location :tests)", "-Dtestinputjar2=io_bazel/$(location :testdata)", "-Dmixedinputjar=io_bazel/$(location :mixed_testinput)", ], runtime_deps = [ ":tests", ], ) genrule( name = "mixed_srcjar_gen", outs = ["mixed.srcjar"], cmd = """set -eu readonly tmpdir="$$(mktemp -d)" echo "package j$$.test; public class Foo {}" > "$${tmpdir}/Foo.java" echo "package zzz; public class Bar {}" > "$${tmpdir}/Bar.java" echo "package aaa; public class Baz {}" > "$${tmpdir}/Baz.java" $(location //tools/zip:zipper) c $@ \\ "j$$/test/Foo.java=$${tmpdir}/Foo.java" \\ "zzz/Bar.java=$${tmpdir}/Bar.java" \\ "aaa/Baz.java=$${tmpdir}/Baz.java" rm -rf "$${tmpdir}" """, tools = ["//tools/zip:zipper"], ) java_library( name = "mixed_testinput", srcs = [":mixed_srcjar_gen"], )