# 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/package.gni")
import("//build/test/test_package.gni")
import("//build/testing/environments.gni")
import("//src/virtualization/buildtools/linux_paths.gni")
import("//src/virtualization/buildtools/romfs_image.gni")

# Packages required to run the guest integration tests.
guest_packages = [
  ":guest_integration_tests_utils",
  "//garnet/packages/prod:guest_runner",
  "//src/virtualization/bin/guest_manager",
  "//src/virtualization/packages/debian_guest",
  "//src/virtualization/packages/termina_guest",
  "//src/virtualization/packages/zircon_guest",
]

group("tests") {
  testonly = true
  deps = [
    ":guest_integration_tests",
    ":guest_integration_tests_bin",
    ":guest_integration_tests_utils",
    ":guest_unit_tests",
    "virtio_block_test_util",
    "virtio_net_test_util",
    "virtio_rng_test_util",
    "virtio_vsock_test_util",
  ]

  # Ensure guest packages are available in the manifest.
  data_deps = guest_packages
}

source_set("logger") {
  visibility = [ ":*" ]
  sources = [
    "logger.cc",
    "logger.h",
  ]
}

source_set("guest_console") {
  visibility = [ ":*" ]
  sources = [
    "guest_console.cc",
    "guest_console.h",
    "socket.cc",
    "socket.h",
  ]
  deps = [
    "//garnet/public/lib/svc/cpp",
    "//sdk/fidl/fuchsia.netstack",
    "//sdk/fidl/fuchsia.virtualization",
    "//src/lib/fxl",
    "//src/lib/inet",
    "//zircon/public/lib/fbl",
  ]
  public_deps = [
    ":logger",
    "//zircon/public/lib/zx",
  ]
}

executable("unit_tests") {
  testonly = true
  output_name = "guest_unit_tests"
  sources = [
    "guest_console_test.cc",
  ]
  deps = [
    ":guest_console",
    "//src/lib/fxl/test:gtest_main",
    "//third_party/googletest:gmock",
    "//third_party/googletest:gtest",
  ]
}

source_set("test_main") {
  testonly = true
  visibility = [ ":*" ]
  sources = [
    "test_main.cc",
  ]
  deps = [
    ":logger",
    "//src/lib/fxl/test:test_settings",
    "//third_party/googletest:gtest",
  ]
}

source_set("lib") {
  visibility = [ ":*" ]
  testonly = true
  sources = [
    "enclosed_guest.cc",
    "enclosed_guest.h",
    "fake_scenic.cc",
    "fake_scenic.h",
    "guest_test.h",
    "mock_netstack.cc",
    "mock_netstack.h",
    "periodic_logger.cc",
    "periodic_logger.h",
  ]

  deps = [
    ":guest_console",
    "//garnet/public/lib/fostr",
    "//garnet/public/lib/fostr/fidl/fuchsia.ui.gfx",
    "//garnet/public/lib/fostr/fidl/fuchsia.ui.scenic",
    "//garnet/public/lib/svc/cpp",
    "//sdk/fidl/fuchsia.virtualization",
    "//sdk/lib/sys/cpp/testing:integration",
    "//src/lib/fxl",
    "//src/lib/inet",
    "//src/virtualization/bin/vmm/device",
    "//src/virtualization/lib/vsh:client",
    "//third_party/googletest:gmock",
    "//third_party/googletest:gtest",
  ]
  public_deps = [
    "//garnet/public/lib/async_promise",
    "//sdk/fidl/fuchsia.netstack",
    "//sdk/fidl/fuchsia.ui.scenic",
    "//src/virtualization/lib/grpc",
    "//src/virtualization/packages/biscotti_guest/third_party/protos:vm_cc_proto",
    "//third_party/googletest:gmock",
    "//third_party/googletest:gtest",
    "//zircon/public/lib/async-loop-cpp",
    "//zircon/public/lib/fbl",
    "//zircon/public/lib/fdio",
  ]
}

executable("guest_integration_tests_bin") {
  visibility = [ ":*" ]
  output_name = "guest_integration_tests"
  testonly = true

  sources = [
    "core_tests.cc",
    "virtio_balloon_tests.cc",
    "virtio_block_tests.cc",
    "virtio_console_tests.cc",
    "virtio_gpu_tests.cc",
    "virtio_net_tests.cc",
    "virtio_rng_tests.cc",
    "virtio_vsock_tests.cc",
  ]

  # Architecture-specific tests.
  if (target_cpu != "arm64") {
    # TODO(MAC-256): Input tests don't currently work on the ARM Linux images.
    sources += [ "virtio_input_tests.cc" ]
  }

  deps = [
    ":lib",
    ":test_main",
    "//sdk/fidl/fuchsia.netstack",
    "//sdk/fidl/fuchsia.virtualization",
    "//sdk/lib/sys/cpp/testing:integration",
    "//src/lib/fxl",
    "//src/lib/fxl/test:test_settings",
    "//src/lib/inet",
    "//src/virtualization/bin/vmm/device",
    "//src/virtualization/bin/vmm/device:qcow_test_data",
    "//third_party/googletest:gmock",
    "//third_party/googletest:gtest",
  ]
}

unittest_package("guest_unit_tests") {
  deps = [
    ":unit_tests",
  ]

  tests = [
    {
      name = "guest_unit_tests"
      environments = basic_envs
    },
  ]
}

icd_filename = "libvulkan_intel.so"
icd_manifest = "${target_gen_dir}/magma.json"

action("icd_manifest") {
  visibility = [ ":*" ]
  script = "//garnet/lib/magma/scripts/gen_icd_manifest.sh"
  args = [
    "${icd_filename}",
    rebase_path(icd_manifest, root_build_dir),
  ]
  outputs = [
    icd_manifest,
  ]
}

romfs_image("extras") {
  testonly = true

  deps = [
    ":icd_manifest",
    "//garnet/lib/magma/tests/integration:magma_abi_conformance_tests(${linux_exe_toolchain})",
    "//garnet/lib/magma/tests_linux/unit_tests:virtmagma_unit_tests_linux(${linux_exe_toolchain})",
    "//garnet/lib/magma/tests_linux/unit_tests:virtmagma_vulkan_unit_tests(${linux_exe_toolchain})",
    "//src/graphics/lib/vulkan(${linux_lib_toolchain})",
  ]

  inputs = [
    "${icd_manifest}",
    "${linux_lib_path}/libvulkan.so",  # Vulkan Loader
    "${linux_exe_path}/virtmagma_unit_tests_linux",
    "${linux_exe_path}/virtmagma_vulkan_unit_tests",
    "${linux_exe_path}/magma_abi_conformance_tests",
  ]

  if (current_cpu == "x64") {
    deps += [ "//third_party/mesa/src/intel/vulkan:vulkan_intel(${linux_lib_toolchain})" ]

    inputs += [ "${linux_lib_path}/${icd_filename}" ]
  }

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

_linux_tests_label = "//src/virtualization/packages/debian_guest:tests"

test_package("guest_integration_tests") {
  deps = [
    ":extras",
    ":guest_integration_tests_bin",
    _linux_tests_label,
  ]

  resources = [
    {
      path = get_label_info(_linux_tests_label, "target_out_dir") +
             "/debian/tests.img"
      dest = "linux_tests.img"
    },
    {
      path = "$target_out_dir/linux/extras.img"
      dest = "extras.img"
    },
  ]

  # Integration tests rely on launching Debian, Zircon and the guest_manager.
  data_deps = guest_packages

  tests = [
    {
      name = "guest_integration_tests"
      environments = [
        nuc_env,
        vim2_env,
      ]
    },
  ]
}

package("guest_integration_tests_utils") {
  deps = [
    "virtio_block_test_util",
    "virtio_net_test_util",
    "virtio_rng_test_util",
    "virtio_vsock_test_util",
  ]

  meta = [
    {
      path =
          rebase_path("virtio_block_test_util/meta/virtio_block_test_util.cmx")
      dest = "virtio_block_test_util.cmx"
    },
    {
      path = rebase_path("virtio_rng_test_util/meta/virtio_rng_test_util.cmx")
      dest = "virtio_rng_test_util.cmx"
    },
    {
      path = rebase_path("virtio_net_test_util/meta/virtio_net_test_util.cmx")
      dest = "virtio_net_test_util.cmx"
    },
    {
      path =
          rebase_path("virtio_vsock_test_util/meta/virtio_vsock_test_util.cmx")
      dest = "virtio_vsock_test_util.cmx"
    },
  ]

  binaries = [
    {
      name = "virtio_block_test_util"
    },
    {
      name = "virtio_net_test_util"
    },
    {
      name = "virtio_rng_test_util"
    },
    {
      name = "virtio_vsock_test_util"
    },
  ]
}

# This should be merged into |guest_integration_tests| once the termina guest is stable in CQ.
executable("termina_integration_tests_bin") {
  visibility = [ ":*" ]
  output_name = "termina_integration_tests"
  testonly = true

  sources = [
    "virtio_magma_tests.cc",
    "virtio_wl_tests.cc",
  ]

  deps = [
    ":lib",
    ":test_main",
    "//third_party/googletest:gtest",
  ]
}

group("termina") {
  testonly = true
  deps = guest_packages
  deps += [ ":termina_integration_tests" ]
}

test_package("termina_integration_tests") {
  deps = [
    ":extras",
    ":termina_integration_tests_bin",
    _linux_tests_label,
  ]

  resources = [
    {
      path = get_label_info(_linux_tests_label, "target_out_dir") +
             "/debian/tests.img"
      dest = "linux_tests.img"
    },
    {
      path = "$target_out_dir/linux/extras.img"
      dest = "extras.img"
    },
  ]

  tests = [
    {
      name = "termina_integration_tests"
      environments = [
        nuc_env,
        vim2_env,
      ]
    },
  ]
}
