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

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

Issue 1680233002: Android Add _incremental targets for instrumentation tests (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 10 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 332c5e9338e5bf23c5208931030d0b9d45f4bccd..efdec28910aacfeb503f8f184f6739da9841c7ed 100644
--- a/build/config/android/internal_rules.gni
+++ b/build/config/android/internal_rules.gni
@@ -529,7 +529,13 @@ template("write_build_config") {
if (defined(invoker.apk_path)) {
_rebased_apk_path = rebase_path(invoker.apk_path, root_build_dir)
+ _rebased_incremental_apk_path =
+ rebase_path(invoker.incremental_apk_path, root_build_dir)
+ _rebased_incremental_install_script_path =
+ rebase_path(invoker.incremental_install_script_path, root_build_dir)
args += [ "--apk-path=$_rebased_apk_path" ]
+ args += [ "--incremental-apk-path=$_rebased_incremental_apk_path" ]
+ args += [ "--incremental-install-script-path=$_rebased_incremental_install_script_path" ]
}
}
@@ -2027,15 +2033,28 @@ template("test_runner_script") {
testonly = true
_test_name = invoker.test_name
_test_type = invoker.test_type
+ _incremental_install =
+ defined(invoker.incremental_install) && invoker.incremental_install
action(target_name) {
script = "//build/android/gyp/create_test_runner_script.py"
depfile = "$target_gen_dir/$target_name.d"
+ deps = []
datadeps = [
"//build/android:test_runner_py",
]
+ # apk_target is not used for native executable tests
+ # (e.g. breakpad_unittests).
+ if (defined(invoker.apk_target)) {
+ _apk_build_config =
+ get_label_info(invoker.apk_target, "target_gen_dir") + "/" +
+ get_label_info(invoker.apk_target, "name") + ".build_config"
+ _rebased_apk_build_config = rebase_path(_apk_build_config, root_build_dir)
+ assert(_rebased_apk_build_config != "") # Mark as used.
+ }
+
test_runner_args = [
_test_type,
"--output-directory",
@@ -2048,19 +2067,32 @@ template("test_runner_script") {
invoker.test_suite,
]
} else if (_test_type == "instrumentation") {
- deps = [
+ deps += [
"${invoker.apk_target}__build_config",
+ "${invoker.apk_under_test}__build_config",
]
- _build_config =
- get_label_info(invoker.apk_target, "target_gen_dir") + "/" +
- get_label_info(invoker.apk_target, "name") + ".build_config"
- _rebased_build_config = rebase_path(_build_config, root_build_dir)
+ _apk_under_test_build_config =
+ get_label_info(invoker.apk_under_test, "target_gen_dir") + "/" +
+ get_label_info(invoker.apk_under_test, "name") + ".build_config"
+ _rebased_apk_under_test_build_config =
+ rebase_path(_apk_under_test_build_config, root_build_dir)
+ _test_apk = "@FileArg($_rebased_apk_build_config:deps_info:apk_path)"
+ _apk_under_test =
+ "@FileArg($_rebased_apk_under_test_build_config:deps_info:apk_path)"
+ if (_incremental_install) {
+ _test_apk = "@FileArg($_rebased_apk_build_config:deps_info:incremental_apk_path)"
+ _apk_under_test = "@FileArg($_rebased_apk_under_test_build_config:deps_info:incremental_apk_path)"
+ }
test_runner_args += [
- "--test-apk",
- "@FileArg($_rebased_build_config:deps_info:apk_path)",
- "--apk-under-test",
- "@FileArg($_rebased_build_config:deps_info:tested_apk_path)",
+ "--test-apk=$_test_apk",
+ "--apk-under-test=$_apk_under_test",
]
+ if (_incremental_install) {
+ test_runner_args += [
+ "--apk-under-test-install-script",
+ "@FileArg($_rebased_apk_under_test_build_config:deps_info:incremental_install_script_path)",
+ ]
+ }
if (emma_coverage) {
# Set a default coverage output directory (can be overridden by user
# passing the same flag).
@@ -2091,9 +2123,10 @@ template("test_runner_script") {
rebase_path(invoker.isolate_file, root_build_dir),
]
}
- if (defined(invoker.incremental_install) && invoker.incremental_install) {
+ if (_incremental_install) {
test_runner_args += [
- "--incremental-install",
+ "--test-apk-install-script",
+ "@FileArg($_rebased_apk_build_config:deps_info:incremental_install_script_path)",
"--fast-local-dev",
]
}

Powered by Google App Engine
This is Rietveld 408576698