# Copyright 2014 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
if (is_android) {
import("//build/config/android/rules.gni")
}
static_library("feature_list") {
sources = [
"invalidation_switches.cc",
"invalidation_switches.h",
]
deps = [ "//base" ]
}
static_library("impl") {
sources = [
"channels_states.cc",
"channels_states.h",
"fcm_invalidation_listener.cc",
"fcm_invalidation_listener.h",
"fcm_invalidation_service.cc",
"fcm_invalidation_service.h",
"fcm_network_handler.cc",
"fcm_network_handler.h",
"fcm_sync_network_channel.cc",
"fcm_sync_network_channel.h",
"invalidation_prefs.cc",
"invalidation_prefs.h",
"invalidation_service_util.cc",
"invalidation_service_util.h",
"invalidator_registrar_with_memory.cc",
"invalidator_registrar_with_memory.h",
"per_user_topic_subscription_manager.cc",
"per_user_topic_subscription_manager.h",
"per_user_topic_subscription_request.cc",
"per_user_topic_subscription_request.h",
"profile_identity_provider.cc",
"profile_identity_provider.h",
"status.cc",
"status.h",
]
public_deps = [
":feature_list",
"//components/invalidation/public",
"//services/data_decoder/public/cpp",
]
deps = [
"//base",
"//base:i18n",
"//components/gcm_driver",
"//components/gcm_driver/common",
"//components/keyed_service/core",
"//components/pref_registry",
"//components/prefs",
"//components/signin/public/identity_manager",
"//google_apis",
"//net:net",
"//services/network/public/cpp",
"//services/network/public/mojom",
]
}
source_set("unit_tests") {
testonly = true
sources = [
"fcm_invalidation_listener_unittest.cc",
"fcm_invalidation_service_unittest.cc",
"fcm_network_handler_unittests.cc",
"invalidator_registrar_with_memory_unittest.cc",
"per_user_topic_subscription_manager_unittest.cc",
"per_user_topic_subscription_request_unittest.cc",
]
deps = [
":impl",
":test_support",
"//base",
"//base/test:test_support",
"//components/gcm_driver:test_support",
"//components/gcm_driver/instance_id:test_support",
"//components/prefs",
"//components/prefs:test_support",
"//components/signin/public/identity_manager:test_support",
"//google_apis:test_support",
"//google_apis/gcm:gcm",
"//net",
"//net:test_support",
"//services/data_decoder/public/cpp:test_support",
"//services/network:test_support",
"//testing/gmock",
"//testing/gtest",
]
}
static_library("test_support") {
testonly = true
sources = [
"fake_invalidation_handler.cc",
"fake_invalidation_handler.h",
"fake_invalidation_service.cc",
"fake_invalidation_service.h",
]
public_deps = [ ":impl" ]
deps = [
"//base",
"//components/gcm_driver:test_support",
"//components/keyed_service/core",
"//components/prefs:test_support",
"//net",
"//testing/gmock",
"//testing/gtest",
]
}