# Copyright 2019 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/rust/rustc_test.gni")
import("//build/test/test_package.gni")
import("//build/testing/environments.gni")

rustc_test("driver") {
  name = "pkgctl_integration_test"
  edition = "2018"

  deps = [
    "//sdk/fidl/fuchsia.pkg:fuchsia.pkg-rustc",
    "//sdk/fidl/fuchsia.pkg.rewrite:fuchsia.pkg.rewrite-rustc",
    "//sdk/fidl/fuchsia.space:fuchsia.space-rustc",
    "//sdk/fidl/fuchsia.sys:fuchsia.sys-rustc",
    "//sdk/fidl/fuchsia.update:fuchsia.update-rustc",
    "//src/lib/fidl/rust/fidl",
    "//src/lib/fuchsia-async",
    "//src/lib/fuchsia-component",
    "//src/lib/fuchsia-url",
    "//src/lib/zircon/rust:fuchsia-zircon",
    "//src/sys/lib/fidl-fuchsia-pkg-ext",
    "//src/sys/lib/fidl-fuchsia-pkg-rewrite-ext",
    "//third_party/rust_crates:anyhow",
    "//third_party/rust_crates:futures",
    "//third_party/rust_crates:http",
    "//third_party/rust_crates:parking_lot",
    "//third_party/rust_crates:proptest",
    "//third_party/rust_crates:serde",
    "//third_party/rust_crates:serde_json",
    "//third_party/rust_crates:tempfile",
  ]

  sources = [ "src/lib.rs" ]
}

test_package("pkgctl-integration-tests") {
  deps = [
    ":driver",
    "//src/sys/pkg/bin/multi-universal-tool",
  ]

  binaries = [
    {
      name = "pkgctl"
      source = "multi_universal_tool"
    },
  ]

  meta = [
    {
      path = rebase_path("//src/sys/pkg/bin/pkgctl/meta/pkgctl.cmx")
      dest = "pkgctl.cmx"
    },
  ]

  tests = [
    {
      name = "pkgctl_integration_test"
      dest = "pkgctl-integration-test"
      environments = basic_envs
    },
  ]
}

group("tests") {
  testonly = true
  public_deps = [ ":pkgctl-integration-tests" ]
}
