blob: 454403c5601f8e685b08a12ec12d4346e591c3ea [file] [log] [blame]
# Copyright 2015 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//build/config/android/rules.gni")
import("//testing/test.gni")
# Mark all targets as test only.
testonly = true
group("system_webview_shell") {
deps = [
":system_webview_shell_apk",
":system_webview_shell_layout_test_apk",
":system_webview_shell_page_cycler_apk",
]
}
declare_args() {
# Android package name to use for system_webview_shell_apk (the WebView shell
# browser). You can change this package name to work around signing key
# conflicts (INSTALL_FAILED_UPDATE_INCOMPATIBLE) on devices/emulators which
# have the shell browser preinstalled under the default package name.
system_webview_shell_package_name = "org.chromium.webview_shell"
}
system_webview_shell_android_manifest =
"$root_gen_dir/android_webview/system_webview_shell_apk/AndroidManifest.xml"
android_apk("system_webview_shell_apk") {
apk_name = "SystemWebViewShell"
sources = [
"apk/src/org/chromium/webview_shell/JankActivity.java",
"apk/src/org/chromium/webview_shell/PageCyclerTestActivity.java",
"apk/src/org/chromium/webview_shell/StartupTimeActivity.java",
"apk/src/org/chromium/webview_shell/TelemetryActivity.java",
"apk/src/org/chromium/webview_shell/TelemetryMemoryPressureActivity.java",
"apk/src/org/chromium/webview_shell/WebPlatformTestsActivity.java",
"apk/src/org/chromium/webview_shell/WebViewAnimationTestActivity.java",
"apk/src/org/chromium/webview_shell/WebViewBrowserActivity.java",
"apk/src/org/chromium/webview_shell/WebViewBrowserSecondProcessActivity.java",
"apk/src/org/chromium/webview_shell/WebViewCreateDestroyActivity.java",
"apk/src/org/chromium/webview_shell/WebViewLayoutTestActivity.java",
"apk/src/org/chromium/webview_shell/WebViewPackageHelper.java",
"apk/src/org/chromium/webview_shell/WebViewThreadTestActivity.java",
"apk/src/org/chromium/webview_shell/WebViewTracingActivity.java",
"apk/src/org/chromium/webview_shell/WebViewWithClipPath.java",
]
android_manifest = system_webview_shell_android_manifest
android_manifest_dep = ":system_webview_shell_manifest"
target_sdk_version = 29
deps = [
":system_webview_shell_apk_resources",
"//base:base_java",
"//third_party/android_deps:android_support_v7_appcompat_java",
"//third_party/guava:guava_android_java",
]
}
jinja_template("system_webview_shell_manifest") {
input = "apk/AndroidManifest.xml"
output = system_webview_shell_android_manifest
variables = [ "manifest_package=$system_webview_shell_package_name" ]
}
android_resources("system_webview_shell_apk_resources") {
sources = [
"apk/res/drawable-mdpi/breadcrumb_arrow_black.png",
"apk/res/drawable-mdpi/ic_launcher.png",
"apk/res/layout/activity_empty.xml",
"apk/res/layout/activity_web_platform_tests.xml",
"apk/res/layout/activity_web_platform_tests_child.xml",
"apk/res/layout/activity_webview.xml",
"apk/res/layout/activity_webview_animation_test.xml",
"apk/res/layout/activity_webview_browser.xml",
"apk/res/menu/main_menu.xml",
"apk/res/values-night/colors.xml",
"apk/res/values-v17/styles.xml",
"apk/res/values-v29/styles.xml",
"apk/res/values/colors.xml",
"apk/res/values/strings.xml",
"apk/res/values/styles.xml",
"apk/res/xml/network_security_config.xml",
]
custom_package = "org.chromium.webview_shell"
deps = [ "//third_party/android_deps:android_support_v7_appcompat_java" ]
}
instrumentation_test_apk("system_webview_shell_page_cycler_apk") {
apk_name = "SystemWebViewShellPageCycler"
apk_under_test = ":system_webview_shell_apk"
android_manifest = "page_cycler/AndroidManifest.xml"
sources = [ "page_cycler/src/org/chromium/webview_shell/page_cycler/PageCyclerTest.java" ]
deps = [
"//base:base_java",
"//base:base_java_test_support",
"//content/public/android:content_java",
"//content/public/test/android:content_java_test_support",
"//testing/android/reporter:reporter_java",
"//third_party/android_support_test_runner:rules_java",
"//third_party/android_support_test_runner:runner_java",
"//third_party/junit",
]
}
instrumentation_test_apk("system_webview_shell_layout_test_apk") {
apk_name = "SystemWebViewShellLayoutTest"
apk_under_test = ":system_webview_shell_apk"
android_manifest = "layout_tests/AndroidManifest.xml"
sources = [
"layout_tests/src/org/chromium/webview_shell/test/WebPlatformTestsActivityTest.java",
"layout_tests/src/org/chromium/webview_shell/test/WebViewLayoutTest.java",
"layout_tests/src/org/chromium/webview_shell/test/WebViewThreadTest.java",
]
deps = [
"//base:base_java",
"//base:base_java_test_support",
"//testing/android/reporter:reporter_java",
"//third_party/android_support_test_runner:rules_java",
"//third_party/android_support_test_runner:runner_java",
"//third_party/junit",
]
data = [
"test/data/",
"//third_party/blink/web_tests/platform/linux/virtual/stable/webexposed/",
"//third_party/blink/web_tests/platform/mac/virtual/stable/webexposed/",
"//third_party/blink/web_tests/platform/win/virtual/stable/webexposed/",
"//third_party/blink/web_tests/resources/global-interface-listing.js",
"//third_party/blink/web_tests/virtual/stable/webexposed/",
"//third_party/blink/web_tests/webexposed/global-interface-listing.html",
"//third_party/blink/web_tests/webexposed/global-interface-listing-expected.txt",
]
use_webview_provider = system_webview_apk_target
}