# Copyright 2018 The Fuchsia 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/cipd.gni")
import("//build/components.gni")
import("//src/media/audio/audio_core/package.gni")
import("//src/virtualization/buildtools/linux_paths.gni")
import("//src/virtualization/buildtools/romfs_image.gni")

guest_packages = [
  "//src/virtualization/bin/guest_manager:debian_guest_manager",
  "//src/virtualization/bin/guest_manager:zircon_guest_manager",

  # TODO(https://fxbug.dev/42073215): when
  # fuchsia.component.test/Realm.InitMutableConfigFromPackage works with
  # subpackaged components, replace with:
  # "//src/virtualization/bin/termina_guest_manager",
  "//src/virtualization/packages/termina_guest",
]

linux_tests_label = "//src/virtualization/packages/debian_guest:tests"
resource("debian_tests_img") {
  sources = [ get_label_info(linux_tests_label, "target_out_dir") +
              "/debian/tests.romfs" ]
  outputs = [ "data/linux_tests.img" ]
  deps = [ linux_tests_label ]
}

termina_extras_label = "//src/virtualization/packages/termina_guest:extras"
resource("termina_extras_img") {
  sources =
      [ get_label_info(termina_extras_label, "target_out_dir") + "/vm_extras" ]
  outputs = [ "data/vm_extras.img" ]
  deps = [ termina_extras_label ]
}

group("tests") {
  testonly = true
  deps = [
    ":termina_container_tests_pkg",
    ":virtualization_balloon_tests_pkg",
    ":virtualization_block_tests_pkg",
    ":virtualization_core_tests_pkg",
    ":virtualization_gpu_tests_pkg",
    ":virtualization_input_tests_pkg",
    ":virtualization_mem_tests_pkg",
    ":virtualization_net_tests_pkg",
    ":virtualization_shutdown_tests_pkg",
    ":virtualization_test_utils_pkg",
    ":virtualization_vsock_tests_pkg",
    "hypervisor",
    "lib:tests",
    "smoke",
    "virtio_input_test_util:tests($host_toolchain)",
  ]

  # TODO(https://fxbug.dev/42076911): These tests currently do not work on arm64.
  if (current_cpu == "x64") {
    deps += [
      # TODO(https://fxbug.dev/42142945): These tests needs to be reworked so that they
      # interact correctly with Scenic.
      ":virtualization_magma_tests_pkg",
      ":virtualization_sound_tests_pkg",
    ]
  }
}

group("build_only") {
  deps = [
    # The zircon test utils binaries touch a lot of FIDL interfaces so we want
    # to build them in CQ to test for build regressions.
    "//src/virtualization/tests:virtualization_test_utils_pkg",
  ]
}

group("test_images") {
  testonly = true
  deps = [
    ":debian_tests_img",
    ":linux_extras_img",
    ":termina_extras_img",
    linux_tests_label,
    termina_extras_label,

    # TODO(https://fxbug.dev/42073215): when
    # fuchsia.component.test/Realm.InitMutableConfigFromPackage works with
    # subpackaged components, remove this line.
    "//src/virtualization/bin/termina_guest_manager:termina_guest_manager_cmp",
  ]
}

executable("virtualization_core_tests") {
  visibility = [ ":*" ]
  testonly = true

  sources = [ "core_tests.cc" ]

  deps = [
    "lib",
    "lib:guest_console",
    "lib:test_main",
    "//sdk/lib/sys/component/cpp/testing:cpp",
    "//src/lib/json_parser",
    "//third_party/googletest:gmock",
    "//third_party/re2",
  ]
}

fuchsia_test_component("virtualization_core_tests_cmp") {
  component_name = "virtualization_core_tests"
  deps = [
    ":test_images",
    ":virtualization_core_tests",
  ]
  manifest = "meta/virtualization_core_tests.cml"
  test_type = "system"
}

fuchsia_test_package("virtualization_core_tests_pkg") {
  package_name = "virtualization-core-tests"
  test_components = [ ":virtualization_core_tests_cmp" ]
  subpackages = guest_packages
  test_specs = {
    environments = guest_envs
    log_settings = {
      max_severity = "ERROR"
    }
  }
}

executable("virtualization_shutdown_tests") {
  visibility = [ ":*" ]
  testonly = true

  sources = [ "shutdown_tests.cc" ]

  deps = [
    "lib",
    "lib:guest_console",
    "lib:test_main",
    "//sdk/lib/sys/component/cpp/testing:cpp",
    "//third_party/googletest:gmock",
  ]
}

fuchsia_test_component("virtualization_shutdown_tests_cmp") {
  component_name = "virtualization_shutdown_tests"
  deps = [
    ":test_images",
    ":virtualization_shutdown_tests",
  ]
  manifest = "meta/virtualization_shutdown_tests.cml"
  test_type = "system"
}

fuchsia_test_package("virtualization_shutdown_tests_pkg") {
  package_name = "virtualization_shutdown_tests"
  test_components = [ ":virtualization_shutdown_tests_cmp" ]
  subpackages = guest_packages
  test_specs = {
    environments = guest_envs
    log_settings = {
      max_severity = "ERROR"
    }
  }
}

executable("virtualization_balloon_tests") {
  visibility = [ ":*" ]
  testonly = true

  sources = [ "virtio_balloon_tests.cc" ]

  deps = [
    "lib",
    "lib:guest_console",
    "lib:test_main",
    "//sdk/fidl/fuchsia.kernel:fuchsia.kernel_cpp",
    "//sdk/lib/component/incoming/cpp",
    "//sdk/lib/sys/component/cpp/testing:cpp",
    "//src/lib/json_parser",
    "//third_party/googletest:gmock",
    "//third_party/re2",
  ]
}

fuchsia_test_component("virtualization_balloon_tests_cmp") {
  component_name = "virtualization_balloon_tests"
  deps = [
    ":test_images",
    ":virtualization_balloon_tests",
  ]
  manifest = "meta/virtualization_balloon_tests.cml"
  test_type = "system"
}

fuchsia_test_package("virtualization_balloon_tests_pkg") {
  package_name = "virtualization_balloon_tests"
  test_components = [ ":virtualization_balloon_tests_cmp" ]
  subpackages = guest_packages
  test_specs = {
    environments = guest_envs
    log_settings = {
      max_severity = "ERROR"
    }
  }
}

executable("virtualization_block_tests") {
  visibility = [ ":*" ]
  testonly = true

  sources = [ "virtio_block_tests.cc" ]

  deps = [
    "lib",
    "lib:guest_console",
    "lib:test_main",
    "//sdk/lib/sys/component/cpp/testing:cpp",
    "//src/virtualization/bin/vmm/device:lib",
    "//src/virtualization/bin/vmm/device:qcow_test_data",
    "//third_party/googletest:gmock",
  ]
}

fuchsia_test_component("virtualization_block_tests_cmp") {
  component_name = "virtualization_block_tests"
  deps = [
    ":test_images",
    ":virtualization_block_tests",
  ]
  manifest = "meta/virtualization_block_tests.cml"
  test_type = "system"
}

fuchsia_test_package("virtualization_block_tests_pkg") {
  package_name = "virtualization-block-tests"
  test_components = [ ":virtualization_block_tests_cmp" ]
  subpackages = guest_packages
  test_specs = {
    environments = guest_envs
    log_settings = {
      max_severity = "ERROR"
    }
  }
}

executable("virtualization_gpu_tests") {
  visibility = [ ":*" ]
  testonly = true

  sources = [ "virtio_gpu_tests.cc" ]

  deps = [
    "lib:guest_console",
    "lib:lib",
    "lib:periodic_logger",
    "lib:test_main",
    "//sdk/fidl/fuchsia.ui.test.input:fuchsia.ui.test.input_cpp",
    "//sdk/lib/sys/component/cpp/testing:cpp",
    "//third_party/googletest:gmock",
    "//third_party/rapidjson",
  ]
}

fuchsia_test_component("virtualization_gpu_tests_cmp") {
  component_name = "virtualization_gpu_tests"
  deps = [
    ":test_images",
    ":virtualization_gpu_tests",
  ]
  manifest = "meta/virtualization_gpu_tests.cml"
  test_type = "system"
}

fuchsia_test_package("virtualization_gpu_tests_pkg") {
  package_name = "virtualization-gpu-tests"
  test_components = [ ":virtualization_gpu_tests_cmp" ]
  subpackages = guest_packages
  test_specs = {
    environments = guest_vulkan_envs
    log_settings = {
      max_severity = "ERROR"
    }
  }
}

executable("virtualization_input_tests") {
  visibility = [ ":*" ]
  testonly = true

  sources = [ "virtio_input_tests.cc" ]

  deps = [
    "lib",
    "lib:guest_console",
    "lib:test_main",
    "//sdk/fidl/fuchsia.ui.test.input:fuchsia.ui.test.input_cpp",
    "//sdk/lib/sys/component/cpp/testing:cpp",
  ]
}

fuchsia_test_component("virtualization_input_tests_cmp") {
  component_name = "virtualization_input_tests"
  deps = [
    ":test_images",
    ":virtualization_input_tests",
  ]
  manifest = "meta/virtualization_input_tests.cml"
  test_type = "system"
}

fuchsia_test_package("virtualization_input_tests_pkg") {
  package_name = "virtualization-input-tests"
  test_components = [ ":virtualization_input_tests_cmp" ]
  subpackages = guest_packages
  test_specs = {
    # Require vulkan for UITestManager
    environments = guest_vulkan_envs
    log_settings = {
      max_severity = "ERROR"
    }
  }
}

executable("virtualization_net_tests") {
  visibility = [ ":*" ]
  testonly = true

  sources = [ "virtio_net_tests.cc" ]

  deps = [
    "lib",
    "lib:guest_console",
    "lib:test_main",
    "//sdk/lib/sys/component/cpp/testing:cpp",
    "//src/lib/inet",
    "//third_party/googletest:gmock",
  ]
}

fuchsia_test_component("virtualization_net_tests_cmp") {
  component_name = "virtualization_net_tests"
  deps = [
    ":test_images",
    ":virtualization_net_tests",
  ]
  manifest = "meta/virtualization_net_tests.cml"
  test_type = "system"
}

fuchsia_test_package("virtualization_net_tests_pkg") {
  package_name = "virtualization-net-tests"
  test_components = [ ":virtualization_net_tests_cmp" ]
  subpackages = guest_packages
  test_specs = {
    environments = guest_envs
    log_settings = {
      max_severity = "ERROR"
    }
  }
}

executable("virtualization_sound_tests") {
  visibility = [ ":*" ]
  testonly = true

  sources = [ "virtio_sound_tests.cc" ]

  deps = [
    "lib",
    "lib:guest_console",
    "lib:test_main",
    "//sdk/lib/sys/component/cpp/testing:cpp",
    "//src/lib/files",
    "//src/media/audio/audio_core/testing/integration:hermetic_audio_test",
    "//src/media/audio/lib/format",
    "//third_party/googletest:gmock",
  ]
}

fuchsia_test_component("virtualization_sound_tests_cmp") {
  component_name = "virtualization_sound_tests"
  deps = [
    ":test_images",
    ":virtualization_sound_tests",
  ]
  manifest = "meta/virtualization_sound_tests.cml"
  test_type = "system"
}

audio_core_test_package("virtualization_sound_tests_pkg") {
  package_name = "virtualization-sound-tests"
  test_components = [ ":virtualization_sound_tests_cmp" ]
  subpackages = guest_packages
  test_specs = {
    environments = guest_envs
    log_settings = {
      max_severity = "ERROR"
    }
  }
  audio_core_manifest_shards =
      [ "//src/media/audio/audio_core/meta/audio_core.shard.ultrasound.cml" ]
}

executable("virtualization_vsock_tests") {
  visibility = [ ":*" ]
  testonly = true

  sources = [ "virtio_vsock_tests.cc" ]

  deps = [
    "lib",
    "lib:guest_console",
    "lib:test_main",
    "//sdk/lib/sys/component/cpp/testing:cpp",
    "//third_party/googletest:gmock",
  ]
}

fuchsia_test_component("virtualization_vsock_tests_cmp") {
  component_name = "virtualization_vsock_tests"
  deps = [
    ":test_images",
    ":virtualization_vsock_tests",
  ]
  manifest = "meta/virtualization_vsock_tests.cml"
  test_type = "system"
}

fuchsia_test_package("virtualization_vsock_tests_pkg") {
  package_name = "virtualization-vsock-tests"
  test_components = [ ":virtualization_vsock_tests_cmp" ]
  subpackages = guest_packages
  test_specs = {
    environments = guest_envs
    log_settings = {
      max_severity = "ERROR"
    }
  }
}

executable("virtualization_mem_tests") {
  visibility = [ ":*" ]
  testonly = true

  sources = [ "virtio_mem_tests.cc" ]

  deps = [
    "lib",
    "lib:guest_console",
    "lib:test_main",
    "//sdk/fidl/fuchsia.kernel:fuchsia.kernel_cpp",
    "//sdk/lib/component/incoming/cpp",
    "//sdk/lib/sys/component/cpp/testing:cpp",
    "//src/lib/json_parser",
    "//third_party/googletest:gmock",
    "//third_party/re2",
  ]
}

fuchsia_test_component("virtualization_mem_tests_cmp") {
  component_name = "virtualization_mem_tests"
  deps = [
    ":test_images",
    ":virtualization_mem_tests",
  ]
  manifest = "meta/virtualization_mem_tests.cml"
  test_type = "system"
}

fuchsia_test_package("virtualization_mem_tests_pkg") {
  package_name = "virtualization_mem_tests"
  test_components = [ ":virtualization_mem_tests_cmp" ]
  subpackages = guest_packages
  test_specs = {
    environments = guest_envs
    log_settings = {
      max_severity = "ERROR"
    }
  }
}

fuchsia_component("virtio_block_test_util_cmp") {
  component_name = "virtio_block_test_util"
  deps = [ "virtio_block_test_util" ]
  manifest = "virtio_block_test_util/meta/virtio_block_test_util.cml"
}

fuchsia_component("virtio_gpu_test_util_cmp") {
  component_name = "virtio_gpu_test_util"
  deps = [ "virtio_gpu_test_util" ]
  manifest = "virtio_gpu_test_util/meta/virtio_gpu_test_util.cml"
}

fuchsia_component("virtio_rng_test_util_cmp") {
  component_name = "virtio_rng_test_util"
  deps = [ "virtio_rng_test_util" ]
  manifest = "virtio_rng_test_util/meta/virtio_rng_test_util.cml"
}

fuchsia_component("virtio_net_test_util_cmp") {
  component_name = "virtio_net_test_util"
  deps = [ "virtio_net_test_util" ]
  manifest = "virtio_net_test_util/meta/virtio_net_test_util.cml"
}

fuchsia_component("virtio_vsock_test_util_cmp") {
  component_name = "virtio_vsock_test_util"
  deps = [ "virtio_vsock_test_util" ]
  manifest = "virtio_vsock_test_util/meta/virtio_vsock_test_util.cml"
}

fuchsia_component("memory_test_util_cmp") {
  component_name = "memory_test_util"
  deps = [ "memory_test_util" ]
  manifest = "memory_test_util/meta/memory_test_util.cml"
}

fuchsia_shell_package("virtualization_test_utils_pkg") {
  package_name = "virtualization-test-utils"
  deps = [
    ":memory_test_util_cmp",
    ":virtio_block_test_util_cmp",
    ":virtio_gpu_test_util_cmp",
    ":virtio_net_test_util_cmp",
    ":virtio_rng_test_util_cmp",
    ":virtio_vsock_test_util_cmp",
  ]
}

romfs_image("extras") {
  testonly = true

  deps = [
    "//src/graphics/magma/tests/integration:virtmagma_conformance_tests(${linux_exe_toolchain})",
    "//src/graphics/magma/tests_linux/unit_tests:virtmagma_vulkan_unit_tests(${linux_exe_toolchain})",
  ]

  inputs = [
    "${linux_exe_path}/virtmagma_vulkan_unit_tests",
    "${linux_exe_path}/virtmagma_conformance_tests",
    "//src/virtualization/tests/testdata/stereo_ramp_48khz_16bit.wav",
  ]

  # We don't run the container tests on arm64, so don't provide any container images to reduce the
  # size of the tests.
  #
  # We also need internal_access because otherwise CIPD will not be able to resolve these files.
  if (internal_access && target_cpu == "x64") {
    inputs += [
      "//prebuilt/virtualization/packages/termina_guest/container/${target_cpu}/lxd.tar.xz",
      "//prebuilt/virtualization/packages/termina_guest/container/${target_cpu}/rootfs.tar.xz",
    ]
  }

  output = "$target_out_dir/linux/extras.img"
}

executable("virtualization_magma_tests") {
  visibility = [ ":*" ]
  testonly = true

  sources = [ "virtio_magma_tests.cc" ]

  deps = [
    "lib",
    "lib:test_main",
    "//sdk/lib/sys/component/cpp/testing:cpp",
    "//third_party/googletest:gtest",
  ]
}

resource("linux_extras_img") {
  testonly = true
  sources = [ "$target_out_dir/linux/extras.img" ]
  outputs = [ "data/extras.img" ]
  deps = [ ":extras" ]
}

fuchsia_test_component("virtualization_magma_tests_cmp") {
  component_name = "virtualization_magma_tests"
  deps = [
    ":test_images",
    ":virtualization_magma_tests",
  ]
  manifest = "meta/virtualization_magma_tests.cml"
  test_type = "system"
}

fuchsia_test_package("virtualization_magma_tests_pkg") {
  package_name = "virtualization_magama_tests"
  test_components = [ ":virtualization_magma_tests_cmp" ]
  subpackages = guest_packages
  test_specs = {
    environments = [ nuc_env ]
    log_settings = {
      max_severity = "ERROR"
    }
  }
}

executable("termina_container_tests") {
  visibility = [ ":*" ]
  testonly = true

  sources = [ "termina_container_tests.cc" ]

  deps = [
    "lib",
    "lib:test_main",
    "//sdk/lib/sys/component/cpp/testing:cpp",
    "//third_party/googletest:gtest",
  ]
}

fuchsia_test_component("termina_container_tests_cmp") {
  component_name = "termina_container_tests"
  deps = [
    ":termina_container_tests",
    ":test_images",
  ]
  manifest = "meta/termina_container_tests.cml"
  test_type = "system"
}

fuchsia_test_package("termina_container_tests_pkg") {
  package_name = "termina_container_tests"
  test_components = [ ":termina_container_tests_cmp" ]
  subpackages = guest_packages
  test_specs = {
    if (is_debug) {
      # See https://fxbug.dev/42062247 for test timeouts when starting the container.
      timeout_secs = 420
    }
    environments = [ nuc_env ]
    log_settings = {
      max_severity = "ERROR"
    }
  }
}
