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

group("lib") {
  testonly = true
  deps = [
    ":identity_lib_unittests",
  ]
}

group("tests") {
  testonly = true
  data_deps = [
    ":identity_lib_unittests",
  ]
}

test_package("identity_lib_unittests") {
  deps = [
    "account_common",
    "oauth:oauth_unittests",
    "token_cache",
    "token_store",
    "token_manager",
  ]

  tests = [
    {
      name = "account_common_lib_test"
      environments = basic_envs
    },
    {
      name = "token_cache_lib_test"
      environments = basic_envs
    },
    {
      name = "token_store_lib_test"
      environments = basic_envs
    },
    {
      name = "oauth_unittests"
      environments = basic_envs
    },
    {
      name = "token_manager_lib_test"
      environments = basic_envs
    }
  ]
}
