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

Side by Side Diff: chrome/android/webapk/shell_apk/BUILD.gn

Issue 2076583002: Add WebAPK's tests in ChildProcessLauncherTest. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Move ChildProcessLaucherTest back to content. Created 4 years, 6 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 unified diff | Download patch
OLDNEW
1 # Copyright 2015 The Chromium Authors. All rights reserved. 1 # Copyright 2015 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 import("//build/config/android/rules.gni") 5 import("//build/config/android/rules.gni")
6 6
7 declare_args() { 7 declare_args() {
8 # The origin URL of the WebAPK. Used to generate a unique package name for 8 # The origin URL of the WebAPK. Used to generate a unique package name for
9 # WebAPK. Example: "foo.com" 9 # WebAPK. Example: "foo.com"
10 webapk_manifest_package_origin = "template" 10 webapk_manifest_package_origin = "template"
11 11
12 # The URL that the WebAPK should navigate to when it is launched. 12 # The URL that the WebAPK should navigate to when it is launched.
13 webapk_start_url = "https://www.template.com/home_page" 13 webapk_start_url = "https://www.template.com/home_page"
14 14
15 # The browser that the WebAPK will be bound to. 15 # The browser that the WebAPK will be bound to.
16 webapk_runtime_host = "com.google.android.apps.chrome" 16 webapk_runtime_host = "com.google.android.apps.chrome"
17 17
18 # The scope of the urls that the WebAPK can navigate to. 18 # The scope of the urls that the WebAPK can navigate to.
19 webapk_scope_url = "https://www.template.com" 19 webapk_scope_url = "https://www.template.com"
20 20
21 # Host part of |webapk_scope|. 21 # Host part of |webapk_scope|.
22 webapk_scope_url_host = "www.template.com" 22 webapk_scope_url_host = "www.template.com"
23 } 23 }
24 24
25 shell_apk_manifest_package = 25 shell_apk_manifest_package =
26 "org.chromium.webapk.$webapk_manifest_package_origin" 26 "org.chromium.webapk.$webapk_manifest_package_origin"
27 test_shell_apk_manifest_package = "org.chromium.webapk.template.test"
27 28
28 shell_apk_manifest = "$target_gen_dir/shell_apk_manifest/AndroidManifest.xml" 29 webapk_common_jinja_variables = [
30 "host_url=$webapk_start_url",
31 "scope_url=$webapk_scope_url",
32 "scope_url_host=$webapk_scope_url_host",
33 ]
34
35 webapk_jinja_variables = [
36 "manifest_package=$shell_apk_manifest_package",
37 "runtime_host=$webapk_runtime_host",
38 ]
39
40 test_webapk_jinja_variables = [
41 "manifest_package=$test_shell_apk_manifest_package",
42 "runtime_host=org.chromium.chrome",
43 ]
29 44
30 jinja_template("shell_apk_manifest") { 45 jinja_template("shell_apk_manifest") {
31 input = "AndroidManifest.xml" 46 input = "AndroidManifest.xml"
32 output = shell_apk_manifest 47 output = "$target_gen_dir/shell_apk_manifest/AndroidManifest.xml"
48 variables = webapk_common_jinja_variables + webapk_jinja_variables
49 }
33 50
34 variables = [ 51 jinja_template("test_shell_apk_manifest") {
35 "manifest_package=$shell_apk_manifest_package", 52 input = "AndroidManifest.xml"
36 "host_url=$webapk_start_url", 53 output = "$target_gen_dir/test_shell_apk_manifest/AndroidManifest.xml"
37 "runtime_host=$webapk_runtime_host", 54 variables = webapk_common_jinja_variables + test_webapk_jinja_variables
38 "scope_url=$webapk_scope_url",
39 "scope_url_host=$webapk_scope_url_host",
40 ]
41 } 55 }
42 56
43 android_resources("shell_apk_resources") { 57 android_resources("shell_apk_resources") {
44 resource_dirs = [ "res" ] 58 resource_dirs = [ "res" ]
45 custom_package = "org.chromium.webapk.shell_apk" 59 custom_package = "org.chromium.webapk.shell_apk"
46 } 60 }
47 61
48 android_library("dex_loader_lib") { 62 android_library("dex_loader_lib") {
49 java_files = [ "src/org/chromium/webapk/shell_apk/DexLoader.java" ] 63 java_files = [ "src/org/chromium/webapk/shell_apk/DexLoader.java" ]
50 } 64 }
51 65
52 # Template for WebAPK. When a WebAPK is generated: 66 # Template for WebAPK. When a WebAPK is generated:
53 # - Android manifest is customized to the website. 67 # - Android manifest is customized to the website.
54 # - App icon is extracted from the website and added to the APK's resources. 68 # - App icon is extracted from the website and added to the APK's resources.
55 android_apk("webapk") { 69 template("webapk_template") {
56 android_manifest = shell_apk_manifest 70 android_apk(target_name) {
57 apk_name = "WebApk.$webapk_manifest_package_origin" 71 forward_variables_from(invoker, "*")
58 java_files = [ 72 java_files = [
59 "src/org/chromium/webapk/shell_apk/MainActivity.java", 73 "src/org/chromium/webapk/shell_apk/MainActivity.java",
60 "src/org/chromium/webapk/shell_apk/WebApkServiceFactory.java", 74 "src/org/chromium/webapk/shell_apk/WebApkServiceFactory.java",
61 ] 75 ]
62 deps = [ 76 deps += [
63 ":dex_loader_lib", 77 ":dex_loader_lib",
64 ":shell_apk_manifest", 78 ":shell_apk_manifest",
65 ":shell_apk_resources", 79 ":shell_apk_resources",
66 "//chrome/android/webapk/libs/common", 80 "//chrome/android/webapk/libs/common",
67 "//chrome/android/webapk/libs/runtime_library", 81 "//chrome/android/webapk/libs/runtime_library",
68 ] 82 ]
69 if (!is_debug) { 83 if (!is_debug) {
70 proguard_enabled = true 84 proguard_enabled = true
71 proguard_configs = [ "//chrome/android/java/proguard.flags" ] 85 proguard_configs = [ "//chrome/android/java/proguard.flags" ]
86 }
72 } 87 }
73 } 88 }
74 89
90 webapk_template("webapk") {
91 android_manifest = get_target_outputs(":shell_apk_manifest")
92 android_manifest = android_manifest[1]
93 apk_name = "WebApk.$webapk_manifest_package_origin"
94
95 deps = [
96 ":shell_apk_manifest",
97 ]
98 }
99
100 # The |test_webapk| target is used for WebAPK's instrumentation tests in the
101 # target chrome_public_test_apk. |test_webapk|'s package name and runtime
102 # host are set to be compatible with the instrumentation tests and are not
103 # customizable.
104 webapk_template("test_webapk") {
105 android_manifest = get_target_outputs(":test_shell_apk_manifest")
106 android_manifest = android_manifest[1]
107 apk_name = "TestWebApk"
108
109 deps = [
110 ":test_shell_apk_manifest",
111 ]
112 }
113
75 android_library("shell_apk_javatests") { 114 android_library("shell_apk_javatests") {
76 testonly = true 115 testonly = true
77 java_files = 116 java_files =
78 [ "javatests/src/org/chromium/webapk/shell_apk/DexLoaderTest.java" ] 117 [ "javatests/src/org/chromium/webapk/shell_apk/DexLoaderTest.java" ]
79 deps = [ 118 deps = [
80 ":dex_loader_lib", 119 ":dex_loader_lib",
81 "//base:base_java", 120 "//base:base_java",
82 "//base:base_java_test_support", 121 "//base:base_java_test_support",
83 "//chrome/android/webapk/libs/common", 122 "//chrome/android/webapk/libs/common",
84 "//content/public/test/android:content_java_test_support", 123 "//content/public/test/android:content_java_test_support",
85 ] 124 ]
86 srcjar_deps = [ "javatests/dex_optimizer:dex_optimizer_service_aidl" ] 125 srcjar_deps = [ "javatests/dex_optimizer:dex_optimizer_service_aidl" ]
87 } 126 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698