• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Tests that run on head android_local_test rule to verify Starlark resource processing pipeline.
2
3load(
4    "//rules:rules.bzl",
5    "android_library",
6    "android_local_test",
7)
8load(
9    "//test/rules/android_local_test:test.bzl",
10    "rule_test",
11)
12
13package(
14    default_applicable_licenses = ["//:license"],
15    default_visibility = ["//visibility:private"],
16)
17
18licenses(["notice"])
19
20android_library(
21    name = "resource_processing",
22    assets = ["assets/bar.txt"],
23    assets_dir = "assets",
24    custom_package = "com.starlark_resources",
25    manifest = "AndroidManifest.xml",
26    resource_files = glob(["res/**"]),
27)
28
29# A custom package is necessary when an android_local_test is under a non-java directory.
30android_local_test(
31    name = "with_custom_package",
32    srcs = ["SampleTest.java"],
33    custom_package = "com.starlark_resources",
34    manifest = "AndroidManifest.xml",
35    test_class = "com.starlark_resources.SampleTest",
36    deps = [
37        ":resource_processing",
38        "@robolectric//bazel:android-all",
39        "@rules_android_maven//:androidx_test_core",
40        "@rules_android_maven//:androidx_test_ext_junit",
41        "@rules_android_maven//:junit_junit",
42        "@rules_android_maven//:org_robolectric_robolectric",
43    ],
44)
45
46rule_test(
47    name = "with_custom_package_rule_test",
48    target_under_test = ":with_custom_package",
49)
50
51# TODO(b/161359429): Create failure test for missing custom package under a non-java directory.
52