chromium/chrome/test/variations/BUILD.gn

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

sdk_data = []
if (is_chromeos && is_chromeos_device) {
  import("//build/config/chromeos/rules.gni")
  if (cros_sdk_version != "") {
    generate_chromeos_sdk_deps("cros_sdk_deps") {
      deploy_chrome = false
    }
    sdk_data += [ ":cros_sdk_deps" ]
  }
}

python_library("test_utils") {
  testonly = true

  data = [ "//chrome/test/variations/test_utils/" ]

  data_deps = [ "//third_party/catapult/third_party/gsutil:gsutil" ]
}

python_library("fixtures") {
  testonly = true

  data = [
    "//build/skia_gold_common/",
    "//chrome/test/variations/drivers/",
    "//chrome/test/variations/fixtures/",
    "//chrome/test/variations/drivers/",
  ]

  data_deps = [ "//ui/base:goldctl" ]

  if (is_android && enable_chrome_android_internal) {
    data += [
      "//build/android/",
      "//tools/android/avd/proto/",
    ]

    data_deps += [
      "//build/android:devil_chromium_py",
      "//build/android:test_runner_py",
      "//clank/bin:installer_scripts",
      "//third_party/catapult/devil:devil",
    ]
  }

  if (is_chromeos && is_chromeos_device) {
    data += [
      "//third_party/catapult/common/py_utils/",
      "//third_party/catapult/common/py_trace_event/",
      "//third_party/catapult/common/py_vulcanize/",
      "//third_party/catapult/dependency_manager/",
      "//third_party/catapult/systrace/",
      "//third_party/catapult/tracing/",
      "//third_party/catapult/third_party/typ/",
      "//third_party/catapult/third_party/six/",
      "//third_party/catapult/tracing/",
      "//third_party/chromite/",
    ]

    data_deps += [
      "//third_party/catapult/devil:devil",
      "//third_party/catapult/telemetry:telemetry",
    ]
  }

  data_deps += sdk_data
}

python_library("variations_desktop_smoke_tests_lib") {
  testonly = true

  data = [
    "conftest.py",
    "smoke_test.py",
    "//chrome/test/data/variations/",
    "//tools/variations/",
  ]

  data_deps = [
    ":fixtures",
    ":test_utils",
  ]
}

script_test("variations_desktop_smoke_tests") {
  script = "//testing/xvfb.py"
  args = [
    "vpython3",
    "-m",
    "pytest",
    "-s",
    "--verbose",
    "@WrappedPath(" + rebase_path("//chrome/test/variations", root_build_dir) +
        ")",
    "-c",
    "@WrappedPath(" +
        rebase_path("//chrome/test/variations/pytest.ini", root_build_dir) +
        ")",
  ]

  data_deps = [
    ":variations_desktop_smoke_tests_lib",
    "//testing:test_scripts_shared",
  ]

  data = [
    "pytest.ini",
    "//.vpython3",
  ]
}