Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2712)

Unified Diff: build/config/android/internal_rules.gni

Issue 2767613002: Expose resources in Robolectric/JUnit tests. (Closed)
Patch Set: GN generate resource dirs. Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: build/config/android/internal_rules.gni
diff --git a/build/config/android/internal_rules.gni b/build/config/android/internal_rules.gni
index e4a4e2d1f6fc59e6ee3bef81c3e738ba0de107da..54c2055f68867ecfa724b1bfb3e32f510532791e 100644
--- a/build/config/android/internal_rules.gni
+++ b/build/config/android/internal_rules.gni
@@ -87,7 +87,7 @@ template("write_build_config") {
type == "android_resources" || type == "deps_dex" ||
type == "dist_jar" || type == "android_assets" ||
type == "resource_rewriter" || type == "java_binary" ||
- type == "group" || type == "java_prebuilt")
+ type == "group" || type == "java_prebuilt" || type == "junit_binary")
forward_variables_from(invoker,
[
@@ -564,10 +564,39 @@ template("test_runner_script") {
}
} else if (_test_type == "junit") {
assert(defined(invoker.test_suite))
+
test_runner_args += [
"--test-suite",
invoker.test_suite,
]
+ if (defined(invoker.android_manifest_path)) {
+ test_runner_args += [
+ "--android-manifest-path",
+ rebase_path(invoker.android_manifest_path, root_build_dir),
+ ]
+ }
+
+ if (defined(invoker.package_name)) {
+ test_runner_args += [
+ "--package-name",
+ invoker.package_name,
+ ]
+
+ deps += [ ":${invoker.test_suite}__build_config" ]
+ _junit_binary_build_config =
+ "${target_gen_dir}/${invoker.test_suite}.build_config"
mikecase (-- gone --) 2017/04/10 23:50:36 @agrieve, I need to specify the build config of t
agrieve 2017/04/11 00:25:02 I can't think of a better way.
+ _rebased_build_config =
+ rebase_path("$_junit_binary_build_config", root_build_dir)
+ test_runner_args += [
+ "--resource-dirs",
+ "@FileArg($_rebased_build_config:test_info:resources_dirs)",
+ ]
+ }
+ test_runner_args += [
+ "--robolectric-runtime-deps-dir",
+ rebase_path("$root_build_dir/lib.java/third_party/robolectric",
+ root_build_dir),
+ ]
} else if (_test_type == "linker") {
test_runner_args += [
"--test-apk",

Powered by Google App Engine
This is Rietveld 408576698