chromium/chrome/android/monochrome/BUILD.gn

# Copyright 2017 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//build/config/android/config.gni")
import("//build/config/python.gni")
import("//testing/test.gni")

# A script that can be used to run the tests locally.
# TODO(agrieve): Figure out how to have the script test used directly by bots.
script_test("monochrome_public_apk_checker_runner") {
  script = "scripts/monochrome_python_tests.py"
  args = [
    "--chrome-apk",
    "apks/ChromePublic.apk",
    "--chrome-pathmap",
    "apks/ChromePublic.apk.pathmap.txt",
    "--system-webview-apk",
    "apks/SystemWebView.apk",
    "--system-webview-pathmap",
    "apks/SystemWebView.apk.pathmap.txt",
    "--monochrome-apk",
    "apks/MonochromePublic.apk",
    "--monochrome-pathmap",
    "apks/MonochromePublic.apk.pathmap.txt",
  ]
  data_deps = [ ":monochrome_public_apk_checker" ]
}

# The target currently referenced by the bot configs.
python_library("monochrome_public_apk_checker") {
  testonly = true
  pydeps_file =
      "//chrome/android/monochrome/scripts/monochrome_python_tests.pydeps"
  data_deps = [
    ":monochrome_python_tests_py",
    "//android_webview:system_webview_apk",
    "//chrome/android:chrome_public_apk",
    "//chrome/android:monochrome_public_apk",
  ]
}

# Separate target so that it can be shared with downstream.
python_library("monochrome_python_tests_py") {
  testonly = true
  pydeps_file = "scripts/monochrome_python_tests.pydeps"
  data = [
    "${public_android_sdk_build_tools}/aapt2",
    "${public_android_sdk_build_tools}/dexdump",
  ]
  data_deps = [
    "//build/android:devil_chromium_py",

    # Depending on logdog_wrapper here is a hack to allow all isolated scripts
    # to be wrapped, otherwise some python dependencies are missing, since
    # this target doesn't depend on test_runner_py like others
    "//build/android:logdog_wrapper_py",
    "//testing:run_isolated_script_test",
  ]
}