chromium/components/power_bookmarks/core/BUILD.gn

# Copyright 2021 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//third_party/protobuf/proto_library.gni")

if (is_android) {
  import("//build/config/android/rules.gni")
}

static_library("core") {
  sources = [
    "bookmark_client_base.cc",
    "bookmark_client_base.h",
    "power_bookmark_data_provider.h",
    "power_bookmark_service.cc",
    "power_bookmark_service.h",
    "power_bookmark_utils.cc",
    "power_bookmark_utils.h",
    "suggested_save_location_provider.h",
  ]

  public_deps = [
    ":proto",
    "//components/power_bookmarks/common",
    "//components/sync/protocol",
  ]

  deps = [
    ":features",
    "//base",
    "//base:i18n",
    "//components/bookmarks/browser",
    "//components/commerce/core:proto",
    "//components/keyed_service/core:core",
    "//components/power_bookmarks/common",
    "//components/power_bookmarks/storage",
    "//components/sync/model:model",
    "//ui/base",
    "//url",
  ]
}

static_library("features") {
  sources = [
    "power_bookmark_features.cc",
    "power_bookmark_features.h",
  ]

  deps = [ "//base" ]
}

proto_library("proto") {
  proto_in_dir = "//"
  sources = [
    "proto/power_bookmark_meta.proto",
    "proto/shopping_specifics.proto",
  ]
  deps = [ "//components/commerce/core:proto" ]
}

if (is_android) {
  proto_java_library("proto_java") {
    proto_path = "//"
    sources = [
      "proto/power_bookmark_meta.proto",
      "proto/shopping_specifics.proto",
    ]
    deps = [ "//components/commerce/core:proto_java" ]
  }
}

source_set("unit_tests") {
  testonly = true

  sources = [
    "bookmark_client_base_unittest.cc",
    "power_bookmark_service_unittest.cc",
    "power_bookmark_utils_unittest.cc",
  ]

  deps = [
    ":core",
    ":features",
    "//base/test:test_support",
    "//components/bookmarks/browser",
    "//components/bookmarks/test",
    "//components/power_bookmarks/common",
    "//components/power_bookmarks/common:test_support",
    "//testing/gmock",
    "//testing/gtest",
  ]
}