# Copyright 2021 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/components.gni")
import("//build/rust/rustc_library.gni")

rustc_library("config_value_file") {
  edition = "2021"
  with_unit_tests = true
  sources = [
    "src/field.rs",
    "src/lib.rs",
  ]
  deps = [
    "//src/sys/lib/cm_rust",
    "//third_party/rust_crates:serde_json",
    "//third_party/rust_crates:thiserror",
  ]
  test_deps = [ "//src/sys/lib/fidl_fuchsia_component_config_ext" ]
}

fuchsia_unittest_package("config_value_file_tests") {
  deps = [ ":config_value_file_test" ]
}

group("tests") {
  testonly = true
  deps = [
    ":config_value_file_test($host_toolchain)",
    ":config_value_file_tests($default_toolchain)",
  ]
}
