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

source_set("vmo_store") {
  sources = [
    "growable_slab.h",
    "owned_vmo_store.h",
    "stored_vmo.h",
    "vmo_store.h",
  ]

  public_deps = [
    "//sdk/lib/stdcompat",
    "//zircon/public/lib/fbl",
    "//zircon/public/lib/fit",
    "//zircon/system/ulib/fzl",
  ]
}

executable("test_bin") {
  testonly = true
  output_name = "vmo-store-test"
  sources = [
    "growable_slab_test.cc",
    "map_pin_test.cc",
    "owned_vmo_store_test.cc",
    "typed_store_test.cc",
  ]
  deps = [
    ":vmo_store",
    "//src/devices/testing/fake-bti",
    "//src/lib/fxl/test:gtest_main",
    "//src/lib/testing/predicates",
    "//third_party/googletest:gtest",
  ]
}

unittest_package("vmo-store-test") {
  deps = [ ":test_bin" ]

  tests = [
    {
      name = "vmo-store-test"
      environments = [ emu_env ]
    },
  ]
}

group("tests") {
  testonly = true
  deps = [ ":vmo-store-test" ]
}
