aboutsummaryrefslogtreecommitdiff
path: root/test/rules/android_local_test/non_java/BUILD
blob: e3f10b78e4f427a8ad74dcb9c81a3a4f887834a3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
# Tests that run on head android_local_test rule to verify Starlark resource processing pipeline.

load(
    "//rules:rules.bzl",
    "android_library",
    "android_local_test",
)
load(
    "//test/rules/android_local_test:test.bzl",
    "rule_test",
)

package(
    default_applicable_licenses = ["//:license"],
    default_visibility = ["//visibility:private"],
)

licenses(["notice"])

android_library(
    name = "resource_processing",
    assets = ["assets/bar.txt"],
    assets_dir = "assets",
    custom_package = "com.starlark_resources",
    manifest = "AndroidManifest.xml",
    resource_files = glob(["res/**"]),
)

# A custom package is necessary when an android_local_test is under a non-java directory.
android_local_test(
    name = "with_custom_package",
    srcs = ["SampleTest.java"],
    custom_package = "com.starlark_resources",
    manifest = "AndroidManifest.xml",
    test_class = "com.starlark_resources.SampleTest",
    deps = [
        ":resource_processing",
        "@robolectric//bazel:android-all",
        "@rules_android_maven//:androidx_test_core",
        "@rules_android_maven//:androidx_test_ext_junit",
        "@rules_android_maven//:junit_junit",
        "@rules_android_maven//:org_robolectric_robolectric",
    ],
)

rule_test(
    name = "with_custom_package_rule_test",
    target_under_test = ":with_custom_package",
)

# TODO(b/161359429): Create failure test for missing custom package under a non-java directory.